首页 > 解决方案 > Pandas_select 根据列值从数据框中选择行

问题描述

我是 Python 新手。我有一个如下所示的数据框。这是一个 CSV 文件。我需要选择所有包含频率值 0.8 和 0.6 的行。我编写了如图所示的代码,但它抛出了一个错误。

df_new = df[df['频率'] == 0.8 & df['频率'] == 1.6 ]

下面是我收到的错误的最后一行。

“TypeError:无法使用 dtyped [float64] 数组和 [bool] 类型的标量执行 'rand_'”

我运行了下面的代码

df_new = df[(df['频率'] == 0.8) & (df['频率'] == 1.6)]

它没有显示任何错误,但没有出现值。它只显示列的名称。请参阅 bwloe 图像

在此处输入图像描述

在此处输入图像描述

标签: pythonpandas

解决方案


由于&and的优先级,您需要添加括号==

df_new = df[(df['Frequency'] == 0.8) & (df['Frequency'] == 1.6) ]

推荐阅读