我正在尝试使用cumsum函数操作数据框。
要执行我的积累,我使用
df = pd.read_excel(excel_sheet, sheet_name='Sheet1').drop(columns=['Material']) # Dropping material column
我将运行其余代码,并获得没有列出材料的数据框累计的预期结果:
df2 = df.as_matrix() #Specifying Array format
new = df2.cumsum(axis=1)
print(new)
但是,最后,我需要替换此物料列。我不确定如何使用添加功能将此返回到数据帧的开头。
答案 0 :(得分:2)
IIUC,那么您只需将material
列设置为索引,然后进行求和,然后将其放回末尾即可:
df2 = df.set_index('Material').cumsum(1).reset_index()
另一种方法是对除第一列以外的所有内容执行cumsum
:
df.iloc[:,1:] = df.iloc[:,1:].cumsum(1)