我有一个数据框 df
Num1 Num2
one 1 0
two 3 2
three 5 4
four 7 6
five 9 8
我想筛选出Num1列中大于3且Num2列中小于8的行。
我尝试过这样:
df = df[df['Num1'] > 3 and df['Num2'] < 8]
但出现了错误。
ValueError:系列的真实值不明确。
所以我使用了
df = df[df['Num1'] > 3]
df = df[df['Num2'] < 8]
我认为代码可以更短。
还有其他办法吗?
df.Num
这样处理列名(假设名称是有效的 Python 变量名称,例如字母数字,以字母开头,允许下划线)! - ptimdf.query
这个函数!谢谢! - Monica Heddneckdf.query
似乎无法正常工作。据我所知,它不适用于使用dash-case
样式的列名。 - Diego