我有一个从 DataFrame 创建的数据透视表。它基本上显示了一个城市一周中每一天的请求数量。
M T W T F S S
CITY 1
CITY 2
CITY 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()
我想知道是否有比单独添加列更有效的方法?
烙印99
相关分类