pandas - 为什么我没有得到行的小计
问题描述
我正在尝试使用 pandas 旋转来获得小计。我不知道为什么我只得到列小计?
data = {'TypeOfInvestor':['Stocks', 'Bonds', 'Real Estate'],
'InvestorA': [96, 181, 88],
'InvestorB': [185, 3, 152],
'InvestorC': [39, 29, 142]}
df = pd.DataFrame(data)
pt = pd.pivot_table(df, values=['InvestorA', 'InvestorB', 'InvestorC'],
index=['TypeOfInvestor'],
aggfunc=np.sum, margins=True, margins_name='Total')
我希望使用 pivot_table 获得列的小计和行的小计,但我只得到列的小计。
解决方案
您可以使用.sum
with轻松添加axis=1
:
pt['Total']= pt.sum(axis=1)
print(pt)
InvestorA InvestorB InvestorC Total
TypeOfInvestor
Bonds 181 3 29 213
Real Estate 88 152 142 382
Stocks 96 185 39 320
Total 365 340 210 915
推荐阅读
- json - 将 JSONtoken 转换为数据源的更好方法
- go - 如何理解 bazel coverage coverage.dat 文件?
- bash - cat file_name | 之间的区别 排序,排序 < 文件名,在 bash 中排序文件名
- python - 如何在熊猫中处理带逗号的列名
- java - Spring Boot Logback 配置文件记录器问题
- python - 在当前类的循环中调用另一个类函数
- python - 将 statsmodels logit 返回的参数约束为正值
- javascript - 在没有任何插件的情况下在 javascript 或 jquery 中延迟加载视频
- express - 猫鼬通过引用保存多个文档
- java - 从计算引擎中的 docker 容器连接到 Cloud SQL