【发布时间】:2021-03-04 01:25:42
【问题描述】:
我有一个按天计算的时间序列,所以,像这样
date value
2020-01-01 50000
2020-01-02 50130
...
2020-10-18 48763
“日期”列用作索引并在导入 csv 时进行解析
我想使用 pandas 将这些值放入这样的数据透视表中
2018 2019 2020
------------------------------
jan 50000 32420 21488
feb 48237 38240 98783
mar 51682 21984 21984
apr 49956 14878 14847
按月/年的数据按指定月份的值总和进行汇总 我正在使用库 pandas 和 calendar 以及函数 .pivot_table
查看他们在this guide 中的建议,作者使用这些代码行
import calendar
all_month_year_df = pd.pivot_table(df, values="Open",
index=["month"],
columns=["year"],
fill_value=0,
margins=True)
named_index = [[calendar.month_abbr[i] if isinstance(i, int) else i for i in
list(all_month_year_df.index)]] # name months
all_month_year_df = all_month_year_df.set_index(named_index)
all_month_year_df
但我得到的只是“月份”的 KeyError,我不知道是什么原因
你能帮我找出原因吗?这段代码哪里错了? 在 ubuntu 20.04 上使用带有 vscode 的 python 3.8.3 64 位,此信息有帮助
谢谢
【问题讨论】:
标签: python-3.x pandas calendar pivot-table