pandasでダブルクォートでデータが読み込めない時にすること
pandasを使っていてダブルクォートが原因でread_csvが失敗するときのメモ
quoting=3のオプションを使う
## test.py
import pandas as pd
df=pd.read_csv('./test.tsv', sep="\t")
print(df)
## test.tsv
#0 20190719 " 1163
#1 20190719 2133 2163
#2 20190719 1951 1977
このtest.pyを実行するとエラーになる。で、どうやら、要素の最初の1文字目がダブルクォートだとうまく読み込めなくなるらしい。終わりのダブルクォートを探しにいってないので要素の終わりがわからないというエラーになる。 ではどうするか?というと、read_csvにオプションを指定してあげれば良いらしい。
## test.py
import pandas as pd
df=pd.read_csv('./test.tsv', sep="\t", quoting=3)
print(df)
quoting=3のオプションを入れるとダブルクォートを通常の文字列と同じように扱うようになる。 いままで使っていてダブルクォートが要素の1文字目くることがなかったらか気づかなかったけど、意識してないと忘れそう。