pandas 如何在python中处理形状为(12238470,211)的大数据集?

xvw2m8pv  于 2023-02-14  发布在  Python
关注(0)|答案(1)|浏览(130)

我正在尝试对一个数据集进行数据分析,在数据集中有一个父目录,在该目录下有35个子目录,在这些子目录下有相同结构的csv文件,我已经合并了,合并成功了,但是数据的形状(12238470,211),当我尝试执行基本操作,如描述函数或删除NaN值时,它给我这个错误:
内存错误:无法为形状为(211,12238470)且数据类型为float64的数组分配19.2 GiB
下面是合并数据的代码:

import glob
import pandas as pd
import matplotlib as plt
import numpy as np

folder_path = "Stress-Predict-Dataset-main"
csv_files = glob.glob(f"{folder_path}/**/*.csv", recursive=True)

df_list = [pd.read_csv(file) for file in csv_files]
df = pd.concat(df_list, ignore_index=True)

如何解决这个问题?

mbyulnm0

mbyulnm01#

您的数据集太大,计算机无法处理。建议使用比数据集大小多5- 10倍的内存。您需要一个工具将数据集拆分为块,如dask

相关问题