それは問題かもしれません
- データの区切り記号
- @TomAugspurgerが指摘したように、最初の行
これを解決するには、 を呼び出すときにsep
and/or引数を指定してみてください。例えば、header
read_csv
df = pandas.read_csv(filepath, sep='delimiter', header=None)
上記のコードでsep
は、区切り文字を定義header=None
し、ソース データにヘッダー/列タイトルの行がないことを pandas に伝えます。したがって、ドキュメントには次のように書かれています。「ファイルにヘッダー行が含まれていない場合は、明示的に header=None を渡す必要があります」。この例では、pandas は各フィールド {0,1,2,...} の整数インデックスを自動的に作成します。
ドキュメントによると、区切り文字は問題にならないはずです。ドキュメントには、「sepがNone [指定されていない]の場合、これを自動的に決定しようとする」と書かれています。ただし、明らかな区切り文字を含むインスタンスを含め、これはうまくいきませんでした。
別の解決策は、区切り文字の自動検出を試すことです
# use the first 2 lines of the file to detect separator
temp_lines = csv_file.readline() + '\n' + csv_file.readline()
dialect = csv.Sniffer().sniff(temp_lines, delimiters=';,')
# remember to go back to the start of the file for the next time it's read
csv_file.seek(0)
df = pd.read_csv(csv_file, sep=dialect.delimiter)