我有两个数据帧,admissions
和scholarship
,具有以下列-studentid
,age
,continent
,sex
,gpa
我想做以下工作:
(I)将sex
和gpa
表中的admissions
值附加到scholarship
表中的相应行,从而仅返回匹配行(索引号)
(II)必要时删除或避免结果列中的x
和y
标记age_x
,continent_x
admissions
studentid, age,continent,sex,gpa
1, 10910, 18, Asia, F, 3.9
2, 10014, 19, Europe, M, 3.8
3, 10121, 18, Africa, M, 3.9
4, 10333, 20, Asia, F, 4.0
5, 10215, 19, America, F, 3.8
scholarship
studentid, age,continent
1, 10910, 18, Asia
3, 10121, 18, Africa
4, 10333, 20, Asia
预期结果
scholarship_admissions
# take note of the index number
studentid, age,continent,sex,gpa
1, 10910, 18, Asia, F, 3.9
3, 10121, 18, Africa, M, 3.9
4, 10333, 20, Asia, F, 4.0
我的尝试
Import pandas as pd
scholarship_admissions = pd.merge(admissions,scholarship,on = ‘studentid’,how = ‘inner’)
多谢各位
您的尝试看起来已经不错了,您可以提供一个列表作为合并键,以避免重复列
输出:
为了保留原始索引,可以将其添加为列,并在合并后重新应用
输出:
在这种特定情况下,您可以只使用
on
,而不是指定left_on
和right_on
,因为两个数据帧中的列具有相同的名称相关问题 更多 >
编程相关推荐