質問編集履歴
1
コードを追記
title
CHANGED
File without changes
|
body
CHANGED
@@ -1,4 +1,16 @@
|
|
1
1
|
Pandasでカンマ区切りcsvデータを読み込み、数値の列を抽出してクラスタリングをしようとしております。ところが、csvデータの数値の列の中で負の符号(例えば-36180など)が有る箇所が、df.head()で見ますとなぜか(36180) の様な()付きの文字列になってしまっており、そのためかクラスタリング実行時にエラーになってしまいます。
|
2
2
|
【エラー】could not convert string to float: '(36180.00)'
|
3
3
|
|
4
|
-
どのようにすれば、-36180 の様に数値のままデータフレームにできますでしょうか。ご教示いただけますと幸いです。
|
4
|
+
どのようにすれば、-36180 の様に数値のままデータフレームにできますでしょうか。ご教示いただけますと幸いです。
|
5
|
+
|
6
|
+
なお、読み込み時のコードは以下です(なぜかエンコーディングエラーが多発するファイルのため、ネットを参照して以下の様にして読み込みました。):
|
7
|
+
```Python3
|
8
|
+
import codecs
|
9
|
+
import pandas as pd
|
10
|
+
|
11
|
+
pd.set_option('display.max_columns', 1000)
|
12
|
+
|
13
|
+
with codecs.open('Agent3.csv', "r", "Shift-JIS", "ignore") as file:
|
14
|
+
df = pd.read_table(file, delimiter=",")
|
15
|
+
display(df.head())
|
16
|
+
```
|