Python 将条件应用于循环时出现值错误(熊猫) while(idf['ship'][i+1]): 测向['radar'][i]=df['radar'][i+1]+df['parked'][i]-df['parked'][i+1] 其他: 测向['radar'][i]=测向['radar'][i+1] 其他: 测向['radar'][i]=测向['ship'][i] i=i+1

Python 将条件应用于循环时出现值错误(熊猫) while(idf['ship'][i+1]): 测向['radar'][i]=df['radar'][i+1]+df['parked'][i]-df['parked'][i+1] 其他: 测向['radar'][i]=测向['radar'][i+1] 其他: 测向['radar'][i]=测向['ship'][i] i=i+1,python,pandas,loops,dataframe,conditional-statements,Python,Pandas,Loops,Dataframe,Conditional Statements,我试图运行此代码,但不断出现错误: ValueError:数据帧的真值不明确。使用a.empty、a.bool()、a.item()、a.any()或a.all() 你推荐什么?基本上,我想根据条件填充柱雷达,我认为除此之外的其余部分都有效。您在这一行中得到了错误: df['Week\u start']==df['Week\u end'] 指定一些索引,如 while (i< len(df)): if (df['ID'][i] == df['ID'][i+1]) & (d

我试图运行此代码,但不断出现错误:

ValueError:数据帧的真值不明确。使用a.empty、a.bool()、a.item()、a.any()或a.all()


你推荐什么?基本上,我想根据条件填充柱雷达,我认为除此之外的其余部分都有效。

您在这一行中得到了错误:

df['Week\u start']==df['Week\u end']
指定一些索引,如

while (i< len(df)):
    if (df['ID'][i] == df['ID'][i+1]) & (df['Week_start'] == df['Week_end']):
        if (df['ship'][i]  > df['ship'][i+1] ):
            df['radar'][i] =df['radar'][i+1] + df['parked'][i] - df['parked'][i+1]
        else:
            df['radar'][i] =df['radar'][i+1]
    else:
        df['radar'][i] = df['ship'][i]
    i = i+1

希望这会有帮助

在代码后面添加示例数据、预期输出和逻辑非常感谢,现在我得到了这个错误:C:\Users\user\Documents\AnacondaNewFolder\lib\site packages\ipykernel\u launcher.py:41:SettingWithCopyWarning:试图在数据帧的切片副本上设置一个值请参见文档中的警告:C:\Users\user\Documents\AnacondaNewFolder\lib\site packages\ipykernel\u launcher.py:39:SettingWithCopyWarning:试图在数据帧切片的副本上设置值
df['Week_start'][i]== df['Week_end'][i+1]