2016-11-02 7 views
0
Total files to Process : 100 
<class 'pandas.core.frame.DataFrame'> 
RangeIndex: 1713078 entries, 0 to 1713077 
Columns: 322 entries, #RIC to Reuters Classification Scheme.1 
dtypes: object(322) 
memory usage: 17.1 GB 
None 

100個のcsvファイルからデータフレームを作成しましたが、上記の場合はです。 17.1 GBと表示されています。 正確にはどういう意味ですか? 私のMacには16GBのRAMしかありません....どうすれば処理できますか? そしてその上限はどれくらい増やすことができるのですか?Python Pandas df.info

+0

[仮想メモリ](https://en.wikipedia.org/wiki/Virtual_memory)になります –

+0

@MosesKoledoye私は8GBのスワップを持っています....それで24GBまで増えるでしょうか? – vks

答えて

0

パンダはそれらがそれを行うための一つの方法は、チャンクでそれを読むことです、メモリに収まらない場合でも、非常に大きなCSVファイルで作業することができます:

チャンクサイズは行数である
reader = pd.read_csv(csv_filename, iterator=True, chunksize=1000) 

プロセスへ。あなたもさえ、物事をスピードアップするためにマルチプロセッシングを使用して、あなたの処理に応じて、

for df in reader: 
# process each data frame 
    your_processing(df) 

:あなたはその後、TextParserオブジェクトに反復処理できる

は次のように、返されました。