python - 无法将 Pandas pct_change 与日期一起使用

标签 python pandas

我有一个数据框:

                 date  value
0 2017-11-30 13:58:57    901
1 2017-11-30 13:59:41    905
2 2017-11-30 13:59:41    925

生成者:

import pandas as pd
df = pd.DataFrame.from_items( [('date', ['2017-11-30 13:58:57', '2017-11-30 13:59:41', '2017-11-30 13:59:41']),("value", [901, 905, 925])])
df['date'] =  pd.to_datetime(df['date'])

我想计算两个连续行之间的百分比变化,但是当我使用时:

df.pct_change()

我收到错误:

ufunc true_divide cannot use operands with types dtype('<M8[ns]') and dtype('<M8[ns]')

如何让它忽略日期列?

最佳答案

How do I make it ignore the date column?

这是一个带有 select_dtypes 的解决方案,它应该通过忽略非数字列来推广到任何数据帧 -

df.select_dtypes(include=['number']).pct_change()

      value
0       NaN
1  0.004440
2  0.022099

关于python - 无法将 Pandas pct_change 与日期一起使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47793356/

相关文章:

python - 是否可以映射数据并制作向量矩阵?

python - 用 `ffill`(或任何其他方法)填充 na 值,并递增 1

python - Pandas 数据框填充索引之间的值

python - 在字典中添加值

python - 尝试将值分配给 groupby 对象的新列时出现 NotImplementedError

python - 对 python 列表中的午餐项目进行排序

python - FFmpeg 输出到数组而不保存到文件

Python-替换 pandas 数据框中的负无穷大值

python - Pandas 很顽固地安装

python - 使用 periodIndex 绘制 pandas 数据框