如果字符串出现在数据框中,则增加一列

时间:2019-03-13 00:16:36

标签: python-3.x pandas dataframe

如果单词“ LIVE”出现在另一列中,我想增加s_number列。第一列将始终为“ LIVE”,然后任何出现的“ LIVE”将始终以2为一组。我想在第二次出现后增加s_number列,我不确定该如何处理< / p>

 Electric  s_number
   LIVE      1
   EARTH     1
   NEUTRAL   1
   NEUTRAL   1
   LIVE      1
   LIVE      2
   EARTH     2
   NEUTRAL   2

1 个答案:

答案 0 :(得分:0)

使用shiftcolumn本身来创建bool,然后执行cumsum

((df.Electric=='LIVE')&(df.Electric.shift()=='LIVE')).cumsum()+1
Out[278]: 
0    1
1    1
2    1
3    1
4    1
5    2
6    2
7    2
Name: Electric, dtype: int32