Pandas从时间序列

时间:2015-05-07 14:29:13

标签: python pandas

如果我有时间序列,我想为每一行计算下一个变化是高于还是低于某个阈值,例如分别为2和-2,为正向移动给出+1值,为负向移动给出-1移动

例如:

Col1  Diff > 2 or <-2
1     1 - 3-1 gives a positive value
2     1 - 4-2 gives a positive value
3     1 - 5-3 give a positive value
4    -1 - 2-4 give a negative value even though the next change is up
5    -1 - 3-5 negative
4    -1 - 2-4 negative
3   
2

这实际上只是对&#39;范围&#39;条形图,但是按每个值而不是下一个值计算。

我现在能想到的唯一方法是迭代总和差值的下一个值,直到差值之和==在这种情况下的阈值2。

这是我的最大努力:

for i in range(0, len(df2.a)-1):
    if (i < len(df.a)-1):
        y= i + 1
        while ((np.abs(df.a[y]- df.a[i]) <= 0.015) & (y < len(df.a)-1)):
            y = y + 1
        if df[a][y] - df[a][i] >= 0.015:
            df['dir_y'][i] = 1
            #print(1)
        else:
            df['dir_y'][i] = -1
            #print(-1)

0 个答案:

没有答案