我最近开始使用Jupyter Lab,我的问题是我使用的是相当大的数据集(通常数据集本身大约。计算机内存的1/4 )。经过几次转换,保存为新的Python对象后,我往往会耗尽内存。问题是,当我接近可用的RAM限制并执行任何需要另一个RAM空间的操作时,我的计算机就会死机,唯一的解决方法就是重新启动它。这是Jupyter Lab/Notebook的默认行为,还是我应该设置的一些设置?通常,我预计程序会崩溃(例如在RStudio中),而不是整个计算机崩溃
发布于 2019-10-21 14:43:42
我认为你应该使用块。就像这样:
df_chunk = pd.read_csv(r'../input/data.csv', chunksize=1000000)
chunk_list = [] # append each chunk df here
# Each chunk is in df format
for chunk in df_chunk:
# perform data filtering
chunk_filter = chunk_preprocessing(chunk)
# Once the data filtering is done, append the chunk to list
chunk_list.append(chunk_filter)
# concat the list into dataframe
df_concat = pd.concat(chunk_list)
有关更多信息,请查看:https://towardsdatascience.com/why-and-how-to-use-pandas-with-large-data-9594dda2ea4c
我建议不要再追加列表(很可能RAM会再次超载)。你应该在那个for循环中完成你的工作。
https://stackoverflow.com/questions/58400437
复制相似问题