python - 类型错误:+ 不支持的操作数类型:“int”和“DateOffset”
问题描述
我已经在 stackoverflow 中引用了以前的链接,但仍然没有得到确切的答案。我正在使用 Colab 笔记本。我的 df.tail() 看起来像这样:
df.tail()
我想为预测创建下一个空的 24 行 24 个月我的代码:
from pandas.tseries.offsets import DateOffset
future_dates = [df.index[-1] + DateOffset(months = x) for x in range (0,24)]
它给了我错误:
类型错误:+ 不支持的操作数类型:“int”和“DateOffset”。
解决方案
df.index
是数据帧的索引器,而不是数据帧本身。数据框的默认索引器是 pandasRangeIndex
对象。当您索引此对象时,它会返回您的索引解析为的整数索引。负索引从末尾开始计数,[-1]
数据帧的最终有效索引也是如此。对于 509 行的数据帧,508 是最后一个有效索引。
相反,您可以使用该iloc
方法按整数索引获取行。与所有 pandas 一样,iloc 也有其复杂性(请参阅文档),但您可以这样做
future_dates = [df.iloc[-1]["Date"] + DateOffset(months = x) for x in range (0,24)]
推荐阅读
- ms-access - 比较 SQL 查询中行 SUM 的值
- css - 是否有适用于旧浏览器的 CSS“内容可见性”替代方案/polyfill?
- javascript - Nuxt Vue 中的 Splidejs
- python - 如何使用 PIL(或其他任何东西)将图像动态调整为文本大小?
- integer - 评分软件不断标记答案 - R 中数据的最小值和最大值之间的整数
- discord.py - 如何让我的 discord.py 机器人计算某个人发送的消息量?
- ruby-on-rails - 使用 upsert 时,“created_at”列中的空值违反非空约束
- react-native - React-Native Animated 在 setState 附近不起作用
- javascript - 如何在我的 firebase 项目中隐藏我的 firebase API 密钥?
- python - 如何像 ipython notebook 一样让代码在 python 中的进程之间保存局部变量?