1
我有一个数据框,根据一列的值(正数或负数)分成两个子集。对列操作和“从DataFrame中复制切片”的Python操作
比方说,一个列包含以下值:
1
4
9
2
1
我基本上要在创建每个子集计算一个值和之间的差异列只是before.So它会在这里看到这样的信息这个:
n/a
3
5
-7
-1
然后我只想把值移到上面一行。我用下面的代码给出了结果,但我总是得到这个警告,我不明白。 “试图在DataFrame的切片副本上设置一个值 尝试使用.loc [row_indexer,col_indexer] =值代替” “您可以帮忙吗?
df_left = df_s[df_s['Benchmark Sigma'] < 0]
df_right = df_s[df_s['Benchmark Sigma'] > 0]
df_left['Benchmark Sigma Interval'] = (df_left['Benchmark Sigma']-df_left['Benchmark Sigma'].shift(1))
df_right['Benchmark Sigma Interval'] = (df_right['Benchmark Sigma']-df_right['Benchmark Sigma'].shift(1))
df_left['Benchmark Sigma Interval']=df_left['Benchmark Sigma Interval'].shift(-1)
df_right['Benchmark Sigma Interval']=df_right['Benchmark Sigma Interval'].shift(-1)