检查数据框列是否包含特定值

时间:2019-07-26 03:41:16

标签: python-3.x pandas dataframe

我正在尝试使用if-else语句来检查数据框列'vi'是否包含值,然后将其提取到下一个对应的行中。数据框包含2列“ j”和“ vi”

if G_df['vi']== vi:
    new_j = G_df.loc['j'].item()

给出is错误:     ValueError:系列的真值不明确。使用a.empty,a.bool(),a.item(),a.any()或a.all()。

我也尝试过:

if G_df['vi'].item() == vi:
    new_j = G_df.loc['j'].item()

,并收到此错误:     ValueError:系列的真值不明确。使用a.empty,a.bool(),a.item(),a.any()或a.all()。

1 个答案:

答案 0 :(得分:0)

G_df['vi']== vi的值是一个系列。您不能在if语句中使用它。另外,在熊猫中应避免使用if语句。这就是您要寻找的东西:

df.loc[df['vi'] == vi, 'j']

此表达式为您提供列'j'等于'vi'的列vi中的所有值。

相关问题