Python 熊猫数据帧创下52周新高以来的天数
编辑:就在我放弃的时候,我找到了答案: 我正在努力解决以下问题:如何向数据帧中添加一列,以便为每一行计算自达到n周期高点以来的天数(周期) 下面是我正在使用的一个示例数据帧。我计算出滚动的5天高点为Python 熊猫数据帧创下52周新高以来的天数,python,date,pandas,dataframe,Python,Date,Pandas,Dataframe,编辑:就在我放弃的时候,我找到了答案: 我正在努力解决以下问题:如何向数据帧中添加一列,以便为每一行计算自达到n周期高点以来的天数(周期) 下面是我正在使用的一个示例数据帧。我计算出滚动的5天高点为 df['Rolling 5 Day High'] = df['Open'].rolling(5).max() 我如何计算每行达到5天高点后的天数?例如,2012年3月16日索引的行的“此后天数”应为4,因为2012年3月12日该行相应的滚动5天高点为14.88。对于2012-03-19指数的下一
df['Rolling 5 Day High'] = df['Open'].rolling(5).max()
我如何计算每行达到5天高点后的天数?例如,2012年3月16日索引的行的“此后天数”应为4,因为2012年3月12日该行相应的滚动5天高点为14.88。对于2012-03-19指数的下一行,该值应为3,因为该行在2012-03-14达到了14.79的5天滚动高点
Open Rolling 5 Day High
Date
2012-03-12 14.88 NaN
2012-03-13 14.65 NaN
2012-03-14 14.79 NaN
2012-03-15 14.41 NaN
2012-03-16 14.59 14.88
2012-03-19 14.68 14.79
2012-03-20 14.56 14.79
2012-03-21 14.40 14.68
2012-03-22 14.35 14.68
2012-03-23 14.40 14.68
2012-03-26 14.69 14.69
2012-03-27 14.78 14.78
2012-03-28 15.01 15.01
2012-03-29 15.14 15.14
2012-03-30 15.36 15.36
2012-04-02 15.36 15.36
2012-04-03 15.44 15.44
2012-04-04 14.85 15.44
2012-04-05 14.67 15.44
2012-04-09 14.40 15.44
2012-04-10 14.38 15.44
2012-04-11 14.35 14.85
2012-04-12 14.36 14.67
2012-04-13 14.55 14.55
2012-04-16 14.26 14.55
这个重大问题可能重复。在您的回答中,您能否详细说明一下如何将其设置为数据框中的一个新列,即“自5天高点以来的天数”?也许把整件事也贴出来作为答案。
Open Rolling 5 Day High
Date
2012-03-12 14.88 NaN
2012-03-13 14.65 NaN
2012-03-14 14.79 NaN
2012-03-15 14.41 NaN
2012-03-16 14.59 14.88
2012-03-19 14.68 14.79
2012-03-20 14.56 14.79
2012-03-21 14.40 14.68
2012-03-22 14.35 14.68
2012-03-23 14.40 14.68
2012-03-26 14.69 14.69
2012-03-27 14.78 14.78
2012-03-28 15.01 15.01
2012-03-29 15.14 15.14
2012-03-30 15.36 15.36
2012-04-02 15.36 15.36
2012-04-03 15.44 15.44
2012-04-04 14.85 15.44
2012-04-05 14.67 15.44
2012-04-09 14.40 15.44
2012-04-10 14.38 15.44
2012-04-11 14.35 14.85
2012-04-12 14.36 14.67
2012-04-13 14.55 14.55
2012-04-16 14.26 14.55