如果我有两个pandas DataFrames:
y_given_x=
y|x probability
0 3 0.11649033348126
1 4 0.02749279374044
2 5 0.02741036003810
3 6 0.34035636232767
4 7 0.16491358255074
和
y=
y_value probability
0 0 0.07185269131381
1 1 0.08588676002891
2 2 0.08098779633814
3 3 0.10091839626284
4 4 0.13794741280748
5 5 0.00755474774703
6 6 0.09515832452838
7 7 0.16606587544047
8 8 0.09969027799237
9 9 0.15393771754059
如何才能获得y
匹配y|x
匹配的y_value
的所有元素?所以这种情况下的预期输出是:
output=
y_value probability
0 3 0.10091839626284
1 4 0.13794741280748
2 5 0.00755474774703
3 6 0.09515832452838
4 7 0.16606587544047
答案 0 :(得分:1)
我认为您可以使用merge
:
print (pd.merge(y,
y_given_x,
left_on='y_value',
right_on='y|x',
suffixes=('','_'))[['y_value','probability']])
y_value probability
0 3 0.100918
1 4 0.137947
2 5 0.007555
3 6 0.095158
4 7 0.166066