python - 如何将 pandas 中的 TimeSeries 对象转换为整数?

标签 python pandas time-series

我一直在使用 Pandas 计算运动员在特定比赛中的年龄,尽管它以 TimeSeries 类型返回。

我现在希望能够根据固定日期绘制年龄(以天为单位),但不知道如何将 TimeSeries 对象转换为整数。接下来我可以尝试什么?

这是数据的形状。

squad_date['mean_age']
2008-08-16     11753 days, 0:00:00
2008-08-23     11760 days, 0:00:00
2008-08-30     11767 days, 0:00:00
2008-09-14     11782 days, 0:00:00
2008-09-20     11788 days, 0:00:00

这是我想要的:

2008-08-16     11753
2008-08-23     11760
2008-08-30     11767
2008-09-14     11782
2008-09-20     11788

最佳答案

对于通过 google 找到这篇文章的人,如果你有 numpy >= 0.7 和 pandas 0.11,这些解决方案将不起作用。什么有效:

squad_date['mean_age'].apply(lambda x: x / np.timedelta64(1,'D'))

Pandas 官方文档在这里可能会令人困惑。他们建议执行“x.item()”,其中 x 已经是一个 timedelta 对象。 x.item() 将从 timedelta 对象中检索作为 int 值的差异。如果那是'ns',你会得到一个带有纳秒数的整数。所以这将给出一个整数除以时间增量错误;直接将 timedeltas 彼此相除确实有效(并将其转换为 Days,如第二部分中的“D”)。

我希望这对将来的人有所帮助!

关于python - 如何将 pandas 中的 TimeSeries 对象转换为整数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15134507/

相关文章:

python - 重新采样 MultiIndexed Pandas DataFrame 并将不同的函数应用于列

elasticsearch - 通过在另一个索引中找到的时间戳来过滤/聚合时间序列数据的一个elasticsearch索引

按时间段滚动平均值而不是 R 中的观察

python - pandas - 识别最接近 null/sentinel 值的行

python - 如何在python中为dict使用点符号?

python - 能够实例化 python 类,尽管它是抽象的(使用 abc)

python - 在 Python 中制作菜单

python - 如何使Python中的多个if语句运行得更快

python - 在 Django 中通过哈希有效地保存文件

python - 列上的多个条件语句