如何根据条件将数据帧中的一列切片为多个系列



我有一个数据框,如下所示:

'A' diff('A')
0   1    NaN
1   2     1
2   5     3
3   2    -3
4   4     2
5   6     2
6   1    -5
7   7     6
8   9     2

我想得到的是这样的东西:

'B'
0   1
1   2
2   5
'C'
0   2
1   4
2   6
'D'
0   1
1   7
2   9

我想将列'A'切成几个新列;对原始列进行切片的条件是列diff('A')上的值为负数。我在想迭代器应该遍历数据帧,每当它在diff('A')遇到负值时,它应该对列进行切片并将其传递给 Series,然后继续直到它到达列的末尾。

有人对此有任何想法吗?

提前感谢!

我相信你的想法很好用,但使用熊猫内置选择器会更有效:

decreased_value = df[df['diff'] < 0]['A'].reset_index(drop=True)

相关内容

最新更新