我有两个数据框, 第一个是属于欧盟的欧洲城市的清单, 他们在哪个国家/地区:
citys_in_eu
国家城市
0瑞典斯德哥尔摩 1德国柏林 2德国法兰克福 3西班牙巴塞罗那 4西班牙马德里 5法国巴黎 ...
对于许多观察,假设数据以这种方式进行,并且可能 每个国家对城市的许多观察。
下一个数据框架是欧洲的所有城市,而不是排他性的 属于欧盟。
此数据框包含有关城市人口的信息:
citys_in_europe
乡村城市人口(亿)
瑞典斯德哥尔摩2 德国柏林8 德国法兰克福5 西班牙巴塞罗那6 西班牙马德里3 法国巴黎8 瑞士伯尔尼1 俄罗斯莫斯科6 ...
(这里的数字是组成的)
基本上我想测试一下之间的人口差异 通过过滤数据以仅查看欧盟城市和非欧盟城市 欧盟内/非欧盟内的城市。 仅使用citys_in_eu的数据框列表,我将如何 实现这一目标?
答案 0 :(得分:1)
您可以尝试以下方法:
首先,您将基于cities_in_eu
EUcities = list(set(cities_in_eu.city))
然后,您将创建一个表,其中包含欧盟城市的所有人口信息:
#create a list of booleans
filter = []
for city in cities_in_europe.city:
filter.append(True if city in EUcities else False)
filtered = pd.Series(filter)
#this one will remain only cities in EU
df_eu = cities_in_europe[filtered]
nonEU_filter = [not i for i in filter]
nonEU_filtered = pd.Series(nonEU_filter)
df_non_eu = cities_in_europe[nonEU_filtered]
您去了,现在有2 df的欧盟人口密集城市和非欧盟的人口密集城市。然后您可以对这两个做其他事情