Python 如何通过带有字符串的列条件从数据帧中删除行-keep getting error“;真理的价值是模糊的;

Python 如何通过带有字符串的列条件从数据帧中删除行-keep getting error“;真理的价值是模糊的;,python,pandas,dataframe,Python,Pandas,Dataframe,我有一个数据框架,其中包含来自不同年龄组的数据——我想删除所有儿童(或保留所有成人)。因此,我想删除所有满足条件的行: df.age\u类别!=“新生儿”&“孩子”和“学龄期” 我知道这个问题已经被问过好几次了,我在这里尝试过很多方法(例如,或) 每次出现以下错误时: ValueError:数据帧的真值不明确。使用a.empty、a.bool()、a.item()、a.any()或a.all() 即使我只使用一个条件,这种情况也会发生,所以或/和语句似乎没有问题。无论我是将条件赋给一个变量,然后

我有一个数据框架,其中包含来自不同年龄组的数据——我想删除所有儿童(或保留所有成人)。因此,我想删除所有满足条件的行:

df.age\u类别!=“新生儿”&“孩子”和“学龄期”

我知道这个问题已经被问过好几次了,我在这里尝试过很多方法(例如,或)

每次出现以下错误时:

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

即使我只使用一个条件,这种情况也会发生,所以
/
语句似乎没有问题。无论我是将条件赋给一个变量,然后使用该变量,还是将循环与if语句一起使用,都无关紧要。无论我是想摆脱孩子还是想把大人留在数据集中,都会发生这种情况,因此
df.drop()
函数也没有问题。

更改

df.age_category != "newborn" & != "child" & != "schoolage"

改变


使用,
df[~df.age\u category.isin([“新生儿”、“儿童”、“学龄”])]
这终于奏效了,非常感谢!!!使用,
df[~df.age\u category.isin([“新生儿”、“儿童”、“学龄”])]
这终于奏效了,非常感谢!!!
all(df.age_category != "newborn",df.age_category != "child",df.age_category != "schoolage")