如何在pandas数据框中获取某列的相对索引?

3
我希望为一支股票创建一个新的5日回报率列。我正在使用pandas dataframe。我使用rolling_mean函数计算了移动平均线,但我不知道如何像在电子表格中引用行(例如B6-B1)那样进行索引引用和减法运算。有谁知道我该如何做这个索引引用和减法运算吗?
示例数据框:
day    price    5-day-return
1      10          -
2      11          -
3      15          -
4      14          -
5      12          -
6      18          i want to find this ((day 5 price) -(day 1 price) )
7      20          then continue this down the list
8      19
9      21 
10     22
1个回答

3
你是否想要这个:

你是否需要这个:

In [10]:

df['5-day-return'] = (df['price'] - df['price'].shift(5)).fillna(0)
df
Out[10]:
   day  price  5-day-return
0    1     10             0
1    2     11             0
2    3     15             0
3    4     14             0
4    5     12             0
5    6     18             8
6    7     20             9
7    8     19             4
8    9     21             7
9   10     22            10

shift函数返回指定偏移量的行,我们用它来减去当前行。fillna函数用于填充在第一个有效计算之前发生的NaN值。


正是我所需要的。谢谢你,聪明的陌生人。 - Nick M

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接