如何提高熊猫枢轴速度?

时间:2021-07-11 07:31:01

标签: python pandas

这是我的代码。我写了一个自定义合并函数,而不是使用 pd.merge,它工作得更快。

def merge_cols(maindf,series,on,suffix):
    extraColumns = sorted(list(set(series.columns.tolist())-set(on)))
    series = pd.merge(maindf[on], series, how='left', on=on)
    for extraColumn in extraColumns:
        maindf[str(extraColumn)+suffix] = series[extraColumn].values
    maindf.reset_index(drop=True,inplace=True)
    return maindf


pivotdf = pd.pivot_table(df, values = ["val1",'val2'], index=['date'], columns = 'Sector').astype("float32")
df = merge_cols(df,pivotdf ,on=["date"],suffix="by_sector")

关于表的信息:

val1val2 是 float32 列。

date 是 Int64 列

Sector 是分类的

0 个答案:

没有答案