首页 > 解决方案 > 如何从另一个 Pandas 数据框中的一列底部 x 行的总和更新空的 Pandas 数据框

问题描述

我想对数据框每一列的底部 x 行求和,并在另一个空数据框中更新它。

我尝试了以下代码,但无法更新数据框。

主 DataFrame 是“df_new_final”,它包含数值。我想在“df_new_final_tail”中进行更新,作为 Master DataFrame 中尾 15 行总和的输入。但是 df_new_final_tail 仍然是空的,但我可以看到“sum_x”正在计算中。不知道为什么它没有得到更新。

Master DataFrame ——> df_new_final
Child DataFrame ——-> df_new_final_tail

df_series_list = df_series.columns.values.tolist() 
df_new_final_tail = pd.DataFrame(columns=df_series_list)

for items in df_series_list:
    sum_x = df_new_final.tail(15)[items+’_buy’].sum()
    df_new_final_tail[items]=sum_x

谢谢

标签: python-3.xpandas

解决方案


Seriesafter转换sum为一列DataFrameSeries.to_frame对于一行,DataFrame使用 transpose by DataFrame.T

df_new_final_tail = df_new_final.tail(15).sum().to_frame().T

如果df_series是另一个DataFrame并且列名称与后缀相同以_buy供解析df_new_final使用:

items = df_series.columns
df_new_final_tail = df_new_final.tail(15)[items+'_buy'].sum().to_frame().T

推荐阅读