我有一个数据框,其中所有列都具有对象的数据类型。我正在运行 python 语法来按条件过滤行。
语法如下:
condition1=dataframe[dataframe['Earnings']=='<=50K']
condition2= dataframe[dataframe["Degree Status"]=="HS-grad"]
condition3=dataframe[dataframe["Country"]=="United-States"]
df= condition1 & condition2 & condition3
我期望得到按不同条件过滤并用 & 连接的输出。 ”<=50K" is string. However, the output is empty. I can't figure out where my mistake is. Anyone with better suggestion?
您似乎正在寻找一种方法来过滤特定列中具有特定值的行。
您可以按照以下方式进行操作
df = dataframe[(dataframe['Earnings'] == '<=50k')
& (dataframe["Degree Status"]=="HS-grad")
& (dataframe["Country"]=="United-States")]
在您的尝试中,每个条件都返回一个dataframe。然而,您可以在您的方法中做的是返回布尔掩码。你的代码看起来像这样
condition1= dataframe['Earnings']=='<=50K'
condition2= dataframe["Degree Status"]=="HS-grad"
condition3= dataframe["Country"]=="United-States"
df = dataframe[condition1 & condition2 & condition3]