python
1ネットをみながらCSVファイルを読み込みたいのですが,エラーが出ます.なぜでしょうか.教えていただければ幸いです.
Traceback (most recent call last): File "E:\デスクトップ\python\CCSSVV.py", line 22, in <module> numbers, squared = read_csv('numbers.csv') File "E:\デスクトップ\python\CCSSVV.py", line 17, in csv nu.append(int(row[0])) ValueError: invalid literal for int() with base 10: '5,500'
import matplotlib.pyplot as plt import csv #フォント from matplotlib.font_manager import FontProperties fp = Fontproperties(fname ='C:\・・・',size = 14) #読み込み def csv(d): nu = [] sq = [] with open(d) as f: r = csv.r(f) next(r) for row in r: nu.append(int(row[0])) sq.append(int(row[1])) return nu, sq #プロット def plot(x,y): plt.plot(x,y) plt.ylabel('番号') plt.xlabel('四角') plt.show() if __name__ == '__main__': nu, sq = csv('ゴキブリ.csv') plot(nu, sq)
**
失礼致しました.CSVファイルをテキストエディタで開いたとき表示されたものです.
"番号,四角"
"5,500"
"5,81"
"19,4"
**
numbers.csvの中身はどんな感じなんでしょう?
csvファイルの各行がアポスロフィーで囲まれていてパースに失敗してそうですね。
A1にNumbers,Squared A2に10,100 A3に981 A4に22848を入れてます
22,484です
numbers.csvをメモ帳などのテキストエディタで開き、質問文の編集を開いてぺたっと貼っていただけると良いです(量が多いようなら適当なところで省略)。あと、ソースコードのmarkdownが崩れてしまっているので、ついでに修正お願いします。
3行目は数値一つしかないんですか???
すみません,カンマも入ってます.
エクセルでいうところの、A1にNumbers,B1にSquared、 A2に10,B2に100・・・というフォーマットに最初からしておく訳にはいきませんか
いけました.どうやら,私がネットの文章を読み違えていたようです.お世話になりました.ありがとうございました.
回答3件
あなたの回答
tips
プレビュー