前提・実現したいこと
pythonでcsvファイルのデータをソートし新たなcsvファイルに書き出したい。
発生している問題・エラーメッセージ
結果のデータの間に空白のデータが1個ずつ挿入されている。このファイルをExcelで開いてみると、データ行の間に空白行が1行ずつ挿入されている。
結果のファイルをインプットとして読み込まそうとすると、以下のエラーとなる。
IndexError: list index out of range
該当のソースコード
import sys, csv, operator mycsv = csv.reader(open('data.csv'),delimiter=',') result = sorted(mycsv, key=operator.itemgetter(0,1,2,3)) with open("sort.csv", "w") as f: data = csv.writer(f, delimiter=',') for r in result: data.writerow(r) data.csv 201804,20125,20180322,1421 201848,21125,20180322,1332 201804,20250,20180323,1946 201804,20500,20180323,1004 201804,15250,20180323,1340 201804,17250,20180323,1231 201804,17500,20180323,1309 201804,18000,20180323,1427 201804,18750,20180323,1822 201804,18750,20180323,908
試したこと
念のため、このdata.csvをExcelで開き、1~4行目を順番に昇順でソート保存してインプットとしたところ、上記IndexError: list index out of rangeにはなりませんでした。
補足情報(FW/ツールのバージョンなど)
ここにより詳細な情報を記載してください。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/04/20 10:52