前提・実現したいこと
TensorFlowで自分で用意したデータを読み込んで、機械学習させたいと思っています。
irisデータを読み込んで、訓練データと、ラベルに分けたいのですが、
http://arakan-pgm-ai.hatenablog.com/entry/2017/05/11/200952
こちらのサイトを参考にデータを読み込ませようとすると、エラーがでて困っています。
irisデータは、
5.1,3.5,1.4,0.2,1,0,0
のようにすべて数値です。
エラーが出るのは、
dat = [[float(elm) for elm in v] for v in dt]
の部分のようですが、どうすれば、文字列からfloat型に変換できるのでしょうか。
発生している問題・エラーメッセージ
ValueError: could not convert string to float: '\ufeff5.1'
該当のソースコード
Python
1import csv 2 3csv_obj = csv.reader(open("irisfull.csv", "r", encoding="utf-8")) 4dt = [ v for v in csv_obj] 5dat = [[float(elm) for elm in v] for v in dt] 6data_body = [[0 for n in range(4)] for m in range(len(dat))] 7label_body = [[0 for nn in range(3)] for mm in range(len(dat))] 8for i in range(len(dat)): 9 for j in range(len(dat[i])): 10 if j <= 3: 11 data_body[i][j] = dat[i][j] 12 else: 13 label_body[i][j-4] = dat[i][j]
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/06/08 11:42