提问者:小点点

计数或标志数据帧列达到条件的次数


我要做的是添加一个新列,如果在一个单独的列中满足了一个条件,该列本质上是‘标记’的-如果下一个值<; 上一个值,然后标记它。 为了简单起见,我们使用1(yes)和0(no)。 示例如下:

DF_Original:

Col1 
  4
  5
  3
  9
  12
  11
  15

DF_Desired:

Col1      Col_flag
  4           0
  5           0
  3           1
  9           0
  12          0
  11          1
  15          0

谢谢你的帮助。


共1个答案

匿名用户

您可以使用np.where()diff():

df = pd.DataFrame({'col1':[4,5,3,9,12,11,15]})
df['Col2'] = np.where(df['col1'].diff() < 0,1,0)

这将输出:

   col1  Col2
0     4     0
1     5     0
2     3     1
3     9     0
4    12     0
5    11     1
6    15     0