python - 如何在python中将年、月、日转换为只有年?
问题描述
这是我现在的输出
Year Value
2010-12-31 50
2011-12-31 38
2012-12-31 84
这就是我要的
Year Value
2010 50
2011 38
2012 84
如何使用 pandas 获得所需的输出?
df["Year"] = pd.to_datetime(data["date"])
df.set_index("Year").groupby(pd.Grouper(freq="Y"))["Value"].sum()
我将频率设置为年份,并且值的总和完美地按年份计算。但是,年列显示日和月。我只想过年。
解决方案
尝试
df['Year'] = pd.to_datetime(df['date'])
out = df.groupby(df['Year'].dt.year)['Value'].sum().reset_index()
推荐阅读
- excel - 根据列标题复制和粘贴值
- python - 何时引用 pandas 中的函数?
- python - 在python3中通过引用传递二叉树
- reactjs - 如何引用我以编程方式创建的元素的 id?
- python - 在从 DataFrame 的顶行创建的新列下对 pandas 列进行分组
- azure-devops - 如何保护 Azure Devops 中的 azure-pipelines.yml 管道文件
- javascript - 打字稿将缺少的方法添加到导出的库类
- c++ - 回文数在平方时为回文的范围内的 C++ 代码
- node.js - 为什么 node.js 没有将我的会话传递给它调用的段
- ckeditor - 如何在ckeditor 5中配置tablecellproperties