为了账号安全,请及时绑定邮箱和手机立即绑定

Pandas:对给定列的数据透视表行求和

Pandas:对给定列的数据透视表行求和

慕桂英4014372 2023-10-11 16:09:46
我有一个从 DataFrame 创建的数据透视表。它基本上显示了一个城市一周中每一天的请求数量。          M  T  W  T  F  S  SCITY 1     CITY 2CITY 3我想创建一个新列,用星期六的数字除以星期一、星期二、星期三和星期四的平均值。这是我写的代码,但是很笨拙。pivot_requests_per_area = df.pivot_table(values="requests_per_area", index="city name", columns="day", aggfunc=np.sum)pivot_requests_per_area["delta_sat"] =pivot_requests_per_area["Saturday"] / ((pivot_requests_per_area["Monday"]+pivot_requests_per_area["Tuesday"]+pivot_requests_per_area["Wednesday"]+pivot_requests_per_area["Thursday"])/4)我尝试这样做,但我从 err 中得到了引发 KeyError(key) 的错误。weekdays = pivot_requests_per_area["Monday", "Tuesday", "Wednesday", "Thursday"]pivot_requests_per_area["delta_fri"] =pivot_requests_per_area["Friday"] / pivot_requests_per_area[weekdays].mean()我想知道是否有比单独添加列更有效的方法?
查看完整描述

1 回答

?
烙印99

TA贡献1829条经验 获得超13个赞

您得到的关键错误位于第一行,正确的代码应该是:

weekdays = pivot_requests_per_area[["Monday", "Tuesday", "Wednesday", "Thursday"]]

替换它,你的代码应该可以工作。


查看完整回答
反对 回复 2023-10-11
  • 1 回答
  • 0 关注
  • 116 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信