2017-12-29 25 views
0

私はpandas read_csvの問題に直面しています。私は実際には、それはケースではありません。フィールド値として「含まれているファイルを、持っているが、これに私は回避策を見つけなければならないため、私は、ファイルの生成に影響を及ぼさない。パンダread_csv行内の文字列内のEOF

pandas.errors.ParserError: Error tokenizing data. C error: EOF inside string starting at line 15345

私が見つけましたGit(link here)のissueレポートでは、 "quotechar"の "sep"パラメータにも使用される区切り文字を使用することを提案しています。この場合、ファイルの構造が乱雑になります。

これに例外を追加してファイルの残りの部分にコードを実行しましたが、その特定の種類のファイルについてこの問題が引き続き発生します。

CSVファイルの読み込みに使用するコマンド:

df_new = pd.read_csv(file_path_name, sep=";", error_bad_lines=False) 

これにはどのような回避策がありますか?この問題でラインを無視する)?私が推測する方法の1つは、CSVライブラリを使用してその行を削除する(または "他のものに置き換える")ことですが、単純にして、パンダ内でできるだけ多くしたいと考えています。

Pythonバージョン:3.6.2

パンダバージョン:0.21.0

はありがとうとよろしく

+0

csvファイルからサンプルの誤ったレコードを投稿できますか?私はあなたの問題を再現しようとしているが、それに遭遇しなかったので尋ねた。 – user8505495

+0

'error_bad_lines = False'は回避策です。しかし、解決策には、ローディングのエラーを引き起こしている行を見ることが必要になります。 –

+0

こんにちは! これを試してみましたが、これは問題を解決するに過ぎず、EOFの問題が発生したときにデータフレームにファイルを読み込むことはできません。 @ user8505495:ここではサンプルレコードです問題の原因となっている(デリミタは;に設定されています) ";"; [email protected]; PRI; BUS; 0; 1; 0.00 ;;;; ACTIVE; 1 ;;; 0; TRUE; GEO; FALSE; 1 – Bostjan

答えて

0

だけからその提案を指摘したい@ user8505495働いていた(もう一度お願いします)

基本的にはちょうどパラメータを追加します。 210〜read_csvto_csvで同じパラメーターを使用しています(エスケープ文字がありません)。 1つのオプションはescapecharパラメータを設定するか、パラメータとしてquotingを使用しないことです。