0

需要一些熊猫从这里开始:

考虑两个数据帧AB。两者都包含一个id带有标识符值的列:

A: id     valA
   8      ?
   2      ?
   4      ?

B: id     valB    valC   
   1      ?       ?      
   4      ?       ?      
   3      ?       ?      
   8      ?       ?      
   2      ?       ?      

我需要一个数据框版本,B它只包含包含来自 标识符的行,其A[id]顺序与A. 那是:

B': id     valB     valC
    8      ?        ?
    2      ?        ?
    4      ?        ?

我认为这是 pandas 中的一个基本操作,但我现在似乎缺少用谷歌搜索它的词汇。

我试过了

B.loc[B['id'].isin(A['id'])]

但这似乎不是解决方案 -id结果中的列与 A.

4

1 回答 1

3

你可以使用pd.merge

In [92]: A.merge(B)
Out[92]:
   id valA valB valC
0   8    ?    ?    ?
1   2    ?    ?    ?
2   4    ?    ?    ?
于 2016-11-27T17:06:06.903 回答