我有两个数据帧。第一:
country city
0 Norway a
1 Norway a
2 Norway a
3 Norway b
4 Norway b
5 Norway b
6 Sweden c
7 Sweden c
8 Sweden c
9 Sweden c
10 Sweden d
11 Sweden d
12 Sweden d
第二:
city region
0 a 1
1 a 2
2 b 3
3 b 4
4 c 5
5 c 6
6 c 7
7 d 8
如何获取以下数据帧?我们只需要在第二个数据框中为相应的城市分配一个正确的国家,作为一个新列
country city region
0 Norway a 1
1 Norway a 2
2 Norway b 3
3 Norway b 4
4 Sweden c 5
5 Sweden c 6
6 Sweden c 7
7 Sweden d 8
我曾尝试使用合并和映射,但未能成功
您可以合并两个数据帧,但首先需要在第一个数据帧中删除重复项:
pd.merge(df1.drop_duplicates(), df2)
输出:
您可以创建一个
dict
将city
名称映射到country
名称,然后将其用作pd.Series.map
方法的映射:输出:
试试这个:
相关问题 更多 >
编程相关推荐