pandas - 熊猫时期 to_timestamp 给我 TypeError
问题描述
我有一个格式如下的 Pandas 数据框:
Month Count
2021-02 100
2021-03 200
其中“月份”列是使用dt.to_period('M')从时间戳获取的。
现在我必须将此“月份”列转换为财政季度,并且我使用了一些方法将期间转换为使用“to_timestamp”的“日期时间”对象,但我得到了错误
TypeError:不支持的类型 Int64Index
有没有另一种方法来解决这个问题?
解决方案
如果使用列,则需要添加.dt
. 如果省略它,Pandas 会尝试转换DatetimeIndex
,如果它不存在,则会引发错误,因为它调用DataFrame.to_timestamp
而不是Series.dt.to_timestamp
:
df['Date'] = df['Month'].to_timestamp()
TypeError:不支持的类型 RangeIndex
df['Date'] = df['Month'].dt.to_timestamp()
print (df)
Month Count Date
0 2021-02 100 2021-02-01
1 2021-03 200 2021-03-01
财政季度的解决方案是使用Series.dt.qyear
. 更好的文档在这里:
df['fquarter'] = df['Month'].dt.qyear
print (df)
Month Count fquarter
0 2021-02 100 2021
1 2021-03 200 2021
推荐阅读
- java - Can't find any java examples of using the androidx navigation architecture for single activity using bottom navigation
- c - 如何避免系统设置的 EEPROM 结构中的全局变量?
- android - 使用 sharedPreference 通过两个活动传递数据
- xcode - macOS App notarisation stuck during upload
- oracle - 在 Oracle 中,如果在 ALL_SOURCE 中不可用,我如何查看另一个模式的触发代码?
- python - 具有不同参数的 Python 中的继承
- javascript - 如何在“确定”和“取消”事件上有一个标题为真/假的确认对话框?
- c# - 有没有办法在 asp.net 标签中应用 css 后代组合器
- python - 如何使用多处理Queue()在进程之间传递变量?
- html - 我想把我的滑动 div 放在主菜单栏后面