2017-11-29 3 views
0

私はcsvファイルを使用してグラフを作成しようとしています。私が散布図をプロットしようとするまで、すべてが正しいように見え、それは文字列を浮動小数点に変換できないというエラーを私に与える。このエラーを解決するには:csvファイルで文字列を浮動小数点に変換できませんでした

matrix=[] 
    doors= [] 
    import csv 
    with open('9car.data.csv') as csvfile: 
     M=csv.reader(csvfile, delimiter=',') 

     for row in M: 
      rowlist= [x for x in row] 
      matrix.append(rowlist) 
     for index in range(len(matrix)): 
      if (index==0): 
       pass 
      else: 
       doors.append((matrix[index][2])) 
    import matplotlib.pyplot as plt 
    from math import * 
    import numpy as np 
    from numpy import * 

    n=1 
    a=np.arange(0,len(doors),n) 
    y=[doors[int(x)] for x in a ] 
    plt.scatter(a,y) 
    plt.show() 
+0

正確なエラーメッセージ/トレースバックを質問に含めてください。 –

+0

CSVのどの列が浮動小数点であるかわかっている場合は、その変換を自分で実行して、そのエラーが発生した行(または行)を出力することができます。 – AlG

+0

質問にもあなたのCSVファイルの少しを追加してください:) – Grantly

答えて

0

私はpythonを知らないが、私はCSVやプログラミングを知っていると私はあなたがPythonのコードにコンマが好きではない、あなたのCSVファイル、内1,234.05のような値を持っていることを賭けるだろう...あなたがする必要があります文字列を正しく解析して浮動小数点数にするためにカンマを何も置き換えないで(カンマを削除して)、CSV値を前処理します。

あなたの正確なエラーの状況を投稿し、私の答えを見直します。たとえば、スウェーデンでは1234.05という数字は1 234,05というテキストで表現されるため、多言語データの解析に問題が見られます

関連する問題