熊猫合并:MemoryError:

时间:2019-03-04 20:55:16

标签: python pandas

我遇到了熊猫的记忆问题。 我一直在搜索,但是找不到适合我的解决方案。 我相信这是一个PEBCAK错误,因为我是python和pandas的新手。

这是导致错误的代码:

filelist = glob.glob("./data/*.csv")
df = pd.DataFrame()

for i in filelist:
    tmp = pd.read_csv(i)
    ticker = i.split('/')[-1].split('.')[0].replace('data\\','')
    data = pd.DataFrame(tmp, columns=["close", "closePct","date"])
    data = data.rename(columns={'close': ticker, 'closePct': ticker+"Pct"})

    # get only stocks with 10y of data
    if len(data) > (250*10):
        if len(df.columns) > 0:
            df = pd.merge(df, data, on='date')
            df = df.dropna()            
        else:
            df = data.copy()

        print(len(df.columns))
    else: 
        print("drop " + ticker)


df.set_index('date', inplace=True)

我试图读取的文件数约为200,每个文件包含2500行。我只想选择列date,close和closePct。我将列重命名为股票行情代码,以跟踪股票。

我尝试过使用dask,但是效果不佳。 :S

Br

0 个答案:

没有答案