如何通过在python中的某些列上应用条件来过滤csv数据

时间:2017-04-13 17:02:12

标签: python pandas jupyter

我是新的python数据分析,并且在以特定格式获取所需数据方面存在一些问题。

我的数据采用以下格式。 (请以csv格式检查所附链接,因为数据非常大)

enter image description here

我使用以下命令以上述格式打印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列。

我如何获得所需的结果?

提前谢谢。

link to csv file

1 个答案:

答案 0 :(得分:2)

您可以使用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]