pandas - 根据精确的行值匹配选择列
问题描述
我正在尝试选择指定整数值 (24) 的列。但是,我的新数据框包括所有值 = 和 > 24。我尝试从整数转换为浮点数和字符串,结果相同。写“24”和 24 给出相同的结果。数据框是从 .csv 文件加载的。
data_PM1_query24 = data_PM1.query('hours == "24"' and 'averages_590_nm_minus_blank > 0.3')
data_PM1_sorted24 = data_PM1_query24.sort_values(by=['hours', 'averages_590_nm_minus_blank'])
data_PM1_sorted24
我在这里想念什么?
解决方案
请尝试以下代码。我假设“hours”和“averages_590_nm_minus_blank”的数据类型是浮点数。如果不是浮动,则将它们转换为浮动。
data_PM1_query24 = data_PM1.query('hours == 24 & averages_590_nm_minus_blank > 0.3')
或者你也可以使用,
data_PM1_query24 = data_PM1[(data_PM1.hours == 24) & (data.averages_590_nm_minus_blank > 0.3)]
希望这能解决您的疑问!