我有两个数据帧DF1和DF2,其中
两者都有子参数“data”和“metadata”,DF1的行数远远多于DF2
DF1
DATA METADATA
0 1 2 3 4 5 attr1 attr2 .. attrN
11 1 1 1 1 1 1 000 apple
13 1 1 1 1 1 1 140 orange
19 1 1 1 1 1 1 199 pineapple
25 1 5 1 1 1 2 000 apple
..
DF2
DATA METADATA
x y z k attr1 attr2 .. attrK
000 2 2 2 2 000 bean
001 2 2 2 2 001 bean
002 2 2 2 2 002 bean
003 2 2 2 2 003 bean
..
199 2 2 2 2 199 bean
200 2 2 2 2 000 orange
201 2 2 2 2 001 orange
..
340 1 2 3 4 140 orange
..
500 4 3 2 1 000 apple
..
700 2 2 2 2 350 bread
..
999 5 5 5 5 199 pineapple
我想根据DF2中的属性将DF2中的列特定行连接到DF1中的行。
具体而言:
对于DF1中的每一行,我只想连接DF2中的行中的数据,这样DF1中的条目就可以了。METADATA.attr1&;DF2。METADATA.attr1和DF1。METADATA.attr2&;DF2。METADATA.attr2每行都是一样的。结果如下:
^{pr2}$我通过循环完成了这项工作,但是我得到了一个糟糕的运行时,并且有很多数据需要我来使它运行得更快,并且应该有一个快速和简单的方法来通过熊猫来完成这一点(我想!)
听起来你想在attr1上进行合并,类似于:
例如(稍作调整):
^{pr2}$注意:这在共享列上合并,在本例中是元数据attr1和attr2。参见merge section of the docs。在
相关问题 更多 >
编程相关推荐