如何通过对 python 中的某些列应用条件来过滤 csv 数据
How to filter csv data by applying conditions on certain columns in python
我是 python 数据分析新手,在获取特定格式的所需数据时遇到一些问题。
我的数据格式如下。 (由于数据量较大,请查看附件link中的csv格式数据)
我使用以下命令以上述格式打印 csv 数据
address = 'C:\Barchatdata.csv'
data_c = pd.read_csv(address)
现在我想在 Energy_Supply_per_capita >280 上应用 if 条件,然后打印索引列、contry_area、Energy_Supply_per_capita 和 Avg_GDP 列。
我尝试了以下命令
data_c.loc[data_c['Energy_Supply_per_capita'] > 280, 'Energy_Supply_per_capita']
但只有索引和 Energy_Supply_per_capita 列。
如何获得所需的结果?
提前致谢。
您可以使用query
cols = ['Country_Area', 'Energy_Supply_per_capita', 'Avg_GDP']
data_c.query('Energy_Supply_per_capita > 280')[cols]
或等效于布尔系列和 loc
cols = ['Country_Area', 'Energy_Supply_per_capita', 'Avg_GDP']
data_c.loc[data_c.Energy_Supply_per_capita > 280, cols]
我是 python 数据分析新手,在获取特定格式的所需数据时遇到一些问题。
我的数据格式如下。 (由于数据量较大,请查看附件link中的csv格式数据)
我使用以下命令以上述格式打印 csv 数据
address = 'C:\Barchatdata.csv'
data_c = pd.read_csv(address)
现在我想在 Energy_Supply_per_capita >280 上应用 if 条件,然后打印索引列、contry_area、Energy_Supply_per_capita 和 Avg_GDP 列。
我尝试了以下命令
data_c.loc[data_c['Energy_Supply_per_capita'] > 280, 'Energy_Supply_per_capita']
但只有索引和 Energy_Supply_per_capita 列。
如何获得所需的结果?
提前致谢。
您可以使用query
cols = ['Country_Area', 'Energy_Supply_per_capita', 'Avg_GDP']
data_c.query('Energy_Supply_per_capita > 280')[cols]
或等效于布尔系列和 loc
cols = ['Country_Area', 'Energy_Supply_per_capita', 'Avg_GDP']
data_c.loc[data_c.Energy_Supply_per_capita > 280, cols]