首页 > 解决方案 > 在数据帧上执行迭代循环时出现值错误

问题描述

我正在运行以下代码:

 def backwash (df):
    df.loc[0, 'backwash'] = np.NaN
     for i in range (3, len(df)-2):
         while (df.loc[i,'MF1 Permeate Flow (m3/min)']==0):
            if (df.loc[i-2:i+2, 'MF1 Trans-Membrane Pressure (kPa) (PDI3423)']>0):
                 df.loc[i,'backwash'] = 'BW'
                 break
            else:
                break
        else:
            pass
    return df

问题出在df.loc [i-2:i+2, 'MF1 Trans-Membrane Pressure (kPa) (PDI3423)']. 因此我得到值错误(真值不明确)。有没有其他方法可以运行这个循环?

我基本上想根据前两行和后两行的值检查某行的值。

标签: pythonpandasdataframeiteration

解决方案


推荐阅读