[英]Why the memory consumption of python pandas dataFrame is so big?
我正在處理非常大的文本文件(大約 4GB)
pandas.read_csv()
加載此文件 - 前兩列將作為索引(2 個字符串的元組)中的鍵,浮點數將位於一列中。read_csv()
生成),我需要使用預定義的鍵列表從第三列中獲取值。 當我嘗試使用loc()
或lookup()
,內存使用量急劇增加到 ~16GB,這會導致線程由於內存交換而變得非常慢。
為什么會發生這種情況? 我的任務還有其他選擇嗎?
這是我的代碼的快照:
similarity_df = pd.read_csv(similarity_dir, sep=' ', header=None, index_col=[0, 1])
values_df = similarity_df.loc[list_tup]
我遇到了同樣的問題。 這是因為多索引。 如果可能,避免對大量數據集使用 MultiIndexes
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.