[英]Check if value from one dataframe exists in another dataframe, print all pairs of values
我有 2 个数据帧:
df1 = pd.DataFrame({'code': ['11', '12', '13', '14'],
'name': ['a', 'a', 'b', 'c']})
df2 = pd.DataFrame({'code': ['15', '16', '17', '18', '19', '20'],
'name': ['a', 'a', 'b', 'c', 'c', 'c']})
我需要构建一个矩阵,该矩阵将包含来自两个 DataFrame 的所有同名代码对。 矩阵应如下所示:
pairs value from df1 value from df2
a-a 11 15
a-a 11 16
a-a 12 15
a-a 12 16
b-b 13 17
c-c 14 18
c-c 14 19
c-c 14 20
感谢您对此的任何帮助
将DataFrame.merge
与DataFrame.insert
DataFrame.merge
使用:
df = df1.merge(df2, on='name', suffixes=(' from df1',' from df2'))
df.insert(0, 'pairs', df['name'] + '-' + df.pop('name'))
print (df)
pairs code from df1 code from df2
0 a-a 11 15
1 a-a 11 16
2 a-a 12 15
3 a-a 12 16
4 b-b 13 17
5 c-c 14 18
6 c-c 14 19
7 c-c 14 20
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.