python - 数据帧反转 drop(column = )
问题描述
我正在尝试使用 cumsum 函数操作数据框。
为了执行我的 cumsum,我使用
df = pd.read_excel(excel_sheet, sheet_name='Sheet1').drop(columns=['Material']) # Dropping material column
我运行我的其余代码,并在没有列出材料的情况下获得数据帧 cumsum 的预期结果:
df2 = df.as_matrix() #Specifying Array format
new = df2.cumsum(axis=1)
print(new)
但是,最后,我需要更换这个材料列。我不确定如何使用 add 函数将其恢复到数据帧的开头。
解决方案
IIUC,那么您可以将material
列设置为索引,然后执行您的 cumsum,然后将其放回最后:
df2 = df.set_index('Material').cumsum(1).reset_index()
另一种方法是cumsum
在除第一列之外的所有列上执行您的操作:
df.iloc[:,1:] = df.iloc[:,1:].cumsum(1)
推荐阅读
- php - 如何在启用了 multiple='multiple' 的 PHP MySQL 表单数据中插入数据
- javascript - 将光标从一个 contenteditable 移动到下一个
- reactjs - React 中 webForm 的单个 onChange 处理程序
- azure-cosmosdb - 如何在 Azure ARM 模板的运行时将变量从 Terraform 传递到 ARM 模板和动态变量?
- pandas - 用 pyspark df 中的新元素填充空值
- powershell - 寻找修复 New-PSSession 错误代码 0x80090322 的技巧
- scala - CountDistinct 基于 spark scala 中的条件
- java - 尝试在 JavaFX 中播放视频时出现 java.lang.reflect.InvocationTargetException
- storybook - 故事书中的嵌套参数或对象参数
- ios - 我的 If let 语句失败,我不知道为什么