gpt4 book ai didi

python - 使用 pandas 和 numpy 获取差异并消除间隙时间序列数据

转载 作者:行者123 更新时间:2023-11-28 17:45:29 24 4
gpt4 key购买 nike

我是 Python 相关环境的初学者,我在使用时间序列数据时遇到问题。

下面是我每天收盘1分钟的数据。

    2011-11-01, 248.70, 248.85, 249.15, ... 250.15, 250.60, 250.55
2011-11-02, 245.80, 246.35, 245.80, ...
...
  1. 我想根据“昨天的最后收盘价”更改时间序列值,如下所示:

    2011-11-01, (248.70 - 248.70), (248.85 - 248.70), (249.15 - 248.70), ... 250.15 - 248.70, 250.60 - 248.70, 250.55 - 248.70
    2011-11-02, (245.80 - 250.55), (246.35 - 250.55), (245.80 - 250.55), ...
    ...

在上面例子的第一行,248.70(这是'今天的开盘'值)被用作减法元素,因为它不可能得到'昨天的收盘'值。

  1. 我想消除昨天和今天之间的 GAP:

    2011-11-01, 248.70, 248.85, 249.15, ... 250.15, 250.60, 250.55
    2011-11-02, 245.80 - (245.80 - 250.55), 246.35 - (245.80 - 250.55), 245.80 - (245.80 - 250.55), ...
    ...

如有任何帮助,我们将不胜感激。

提前谢谢你,

最佳答案

假设您已将这些以逗号分隔的值加载到按日期索引的 DataFrame 中,每分钟有一列。最后一列将是最后的收盘价。像这样的东西:

df = read_csv('filename.csv', header=None, index_col=0, parse_dates=0)

要将今天的值与昨天的上一个值进行比较,请获取最后一列并使用 shift 键“向上”查找一行。

last_column = df.columns[-1]
df1 = df - df[last_column].shift(1) # last close value of yesterday

问题的第二部分类似:

first_column = df.columns[0]
df2 = df - (df[first_column] - df[last_column].shift(1))

关于python - 使用 pandas 和 numpy 获取差异并消除间隙时间序列数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18791762/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com