非常にエレガントで効率的な方法で、pd.read_csv(path、chunkksize = N)で終わるまでcsvファイルを開きたいと思います。問題は、ポインタがファイルから外れると、次のエラーメッセージが発生することです。pandas.read_csv()でデータを読み込む際に例外を処理する
df.get_chunk()
Traceback (most recent call last):
File "<ipython-input-115-061ea8dbcbad>", line 1, in <module>
df.get_chunk()
File "C:\Users\fedel\Anaconda2\lib\site-packages\pandas\io\parsers.py", line 784, in get_chunk
return self.read(nrows=size)
File "C:\Users\fedel\Anaconda2\lib\site-packages\pandas\io\parsers.py", line 763, in read
ret = self._engine.read(nrows)
File "C:\Users\fedel\Anaconda2\lib\site-packages\pandas\io\parsers.py", line 1213, in read
data = self._reader.read(nrows)
File "pandas\parser.pyx", line 766, in pandas.parser.TextReader.read (pandas\parser.c:7988)
File "pandas\parser.pyx", line 813, in pandas.parser.TextReader._read_low_memory (pandas\parser.c:8629)
StopIteration
このコードはもう処理できません。
私はtry/except文が私にそのメッセージを避けるので、コードは次の問題に進むと信じています。私は、私は1つのコードをそのエラーを回避してみましょう可能性があり、次のようなステートメントは、次の問題に進んでいると思い
path = r"C:\Users\fedel\Desktop" + '\\fileName.csv'
pd.DataFrame(np.random.randn(30, 3), columns = list('abc')).to_csv(path, index = False)
df = pd.read_csv(path, chunksize = 6)
あなたが次のコード行を生成することができるようなPythonのデータフレームを持っていると言う
while True:
try:
df.get_chunk()
except TypeOfError:
funcyfunction()
この最後の例外処理コードを修正できますか?
試してみてください。 'DF = pd.read_csv(パス、 chunksize = 6、error_bad_lines = False) 'を使用してエラーを引き起こす行をスキップします。 –
いいえ、私はできません!それでも私にエラーのメッセージを提供します –
完全なトレースバックエラーを投稿できますか? –