Pandas-循环控制-根据列值比较控制循环的行为

问题描述

假设我有一个如下所示的Pandas DataFrame:

Row | Column1 | Column2 | Column3
0 | abc | 10 | NY
1 | abc | 20 | NY
2 | abc | 15 | CA
3 | xyz | 10 | RI
4 | xyz | 30 | NV
5 | lmn | 15 | MN

现在,我想对column2和column3的值执行多项操作,但是仅当column1的值更改时。也就是说,循环应贯穿前三行,并在值更改时激活不同的代码。传统语言中这样的内容:

prev = df[0:1]
    for row in df:
       if prev.column1 == row.column1:
          <some code>
          continue
       else:
          <some other code>
    
       prev = row

目前,我尝试过的上述代码的python等效项对我不起作用,因为它表示该系列的真值不明确。如果我通过在条件上使用.any()来解决此问题,那么对于column1值的第一次更改,它可以正常工作,但是会抛出异常; bool没有属性“ any”。

谢谢您的帮助。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)