我有以下数据:
Dashboard::#{UserTypeGoesHere}.new(current_user)?
我想弄清楚第一个值20.4417
20.5679
20.0826
20.9950
20.0244
19.1702
19.3546
19.1702
19.7138
19.3546
与其后的每个值之间的百分比变化。 pandas 20.4417
函数返回彼此相邻的值的变化,当我尝试将Series的第一个值放入pct_change()
时,我认为它将其作为句点并给予我{{ 1}}直到那一点。有谁知道如何让它获取参数并在该参数和系列的每个元素之间进行百分比变化?这是我的代码:
pct_change()
答案 0 :(得分:2)
s2 = s1 / s1[0] - 1
这应该这样做
答案 1 :(得分:0)
突然出现的第一件事就是只添加另一列,然后对axis=1
进行百分比更改。
import pandas as pd
f = pd.DataFrame(
[20.4417,
20.5679,
20.0826,
20.9950,
20.0244,
19.1702,
19.3546,
19.1702,
19.7138,
19.3546])
f['added_col'] = [f[0][0] for i in range(len(f))] # Create column where each element is the first item in the first column
f = f[f.columns[::-1]] # flip our columns so we compare in the right order
print f.pct_change(axis=1)[0]
输出:
0 0.000000
1 0.006174
2 -0.017567
3 0.027067
4 -0.020414
5 -0.062201
6 -0.053181
7 -0.062201
8 -0.035609
9 -0.053181
Name: 0, dtype: float64