计算两个时间序列 dataframe的差值
时间: 2023-08-10 21:07:23 浏览: 53
计算两个时间序列 DataFrame 的差值,可以使用 pandas 库中的 `sub()` 方法。该方法可以对两个 DataFrame 进行逐元素的减法操作,并返回一个新的 DataFrame,其中每个元素都是两个 DataFrame 相应元素的差值。
下面是一个示例代码,演示如何计算两个时间序列 DataFrame 的差值:
```python
import pandas as pd
# 创建两个时间序列 DataFrame
start = '2021-01-01'
end = '2021-01-10'
dates = pd.date_range(start=start, end=end)
df1 = pd.DataFrame({'A':[1, 2, 3, 4, 5, 6, 7, 8, 9, 10], 'B':[11, 12, 13, 14, 15, 16, 17, 18, 19, 20]}, index=dates)
df2 = pd.DataFrame({'A':[2, 4, 6, 8, 10, 12, 14, 16, 18, 20], 'B':[22, 24, 26, 28, 30, 32, 34, 36, 38, 40]}, index=dates)
# 计算两个 DataFrame 的差值
diff = df1.sub(df2)
# 打印结果
print(diff)
```
输出结果如下:
```
A B
2021-01-01 -1 -11
2021-01-02 -2 -12
2021-01-03 -3 -13
2021-01-04 -4 -14
2021-01-05 -5 -15
2021-01-06 -6 -16
2021-01-07 -7 -17
2021-01-08 -8 -18
2021-01-09 -9 -19
2021-01-10 -10 -20
```
在这个示例中,我们创建了两个时间序列 DataFrame,分别为 `df1` 和 `df2`。然后使用 `sub()` 方法计算了它们的差值,并将结果存储到了 `diff` 变量中。最后,我们打印了计算结果。
需要注意的是,两个 DataFrame 的形状需要完全相同,且时间索引也需要完全相同,否则计算结果将会出现缺失值或错误。