python - 无法将类型 'Timestamp' 与类型 'int' 进行比较 - 减去数据集

标签 python pandas numpy dataframe timestamp

我有以下数据集:

1) 以月份为时间戳的数据集

df = pd.DataFrame(residuals, columns = ['Passengers']) 
             Passengers
Month   
1949-01-01  -0.082329
1949-02-01  -0.040724
1949-03-01  0.060813
1949-04-01  0.027243
1949-05-01  -0.047359
1949-06-01  0.051545
1949-07-01  0.132902
1949-08-01  0.122322

b) 以月份为 Int 的数据集

dz = pd.DataFrame(estacionalitat, columns = ['Passengers']) 

    Passengers
Month   
1   -0.075844
2   -0.089111
3   0.042705
4   0.002147
5   -0.010528
6   0.109443
7   0.198334
8   0.209830

两个数据集中都进行了一组转换,但原始数据来自以下数据集:

data = pd.read_csv('AirPassengers.csv', parse_dates=['Month'], index_col='Month', header=0)

我想从一个数据集中减去另一个数据集,如下所示:

df-dz

但是,当我尝试执行上述操作时,我收到以下消息:

无法将“Timestamp”类型与“int”类型进行比较

我猜这是因为“月份”在一个数据集中是 int 类型,而在另一个数据集中是 Date 类型。此外,我不知道如何访问“月份”,因为它不被理解为一列。

最佳答案

如果想将 DatetimeIndex 转换为月份,请使用:

df.index = df.index.month

然后在两个中获取整数,列名相同,因此可以相减:

df = df-dz
print (df)
       Passengers
Month            
1       -0.006485
2        0.048387
3        0.018108
4        0.025096
5       -0.036831
6       -0.057898
7       -0.065432
8       -0.087508

关于python - 无法将类型 'Timestamp' 与类型 'int' 进行比较 - 减去数据集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59561952/

相关文章:

python - Numpy 似乎产生了不正确的特征向量

python - CNTK python 中的用户定义层

python - Django:使用 "cannot import name import_string"时为 "rest_framework_docs"

python - 如何使用 pymysql 作为驱动程序配置 Django?

python - 仅从 pandas 的混合数据类型列中选择整数

python - 将 DateTimeIndex 的时间元素分配给新列

python - 需要转义 Python 正则表达式中特殊字符后的字符?

python - Pandas 生成缺失的日期和时间,值为 0

python - 如何计算计数值对的标准差

arrays - 生成嵌套的 Numpy 数组