根据另一个数据框的索引保留一个数据框的索引

时间:2019-09-17 07:53:43

标签: python pandas

假设我有两个数据帧AB0索引到10。我从A删除了几个重复的行,以便删除了索引79。所以现在A.index将是[0,1,2,3,4,5,6,8,10]

现在,我想准确保留B中具有这些相同索引的行。到目前为止,它的索引集是从010。换句话说,给定最初完全相同的索引,并且从A删除了一些索引,如何保留与B中保留的行完全对应的A行的子集他们的索引条款?

1 个答案:

答案 0 :(得分:2)

我相信您可以通过loc进行选择:

A = pd.DataFrame({'col':[5,8,4,0,6,2,1,8,3,4,9]})
B = pd.DataFrame({'col':np.arange(10, 21)})
#print (A)
#print (B)

A1 = A.drop_duplicates('col')
print (A1)
    col
0     5
1     8
2     4
3     0
4     6
5     2
6     1
8     3
10    9

B1  = B.loc[A1.index]
print (B1)
    col
0    10
1    11
2    12
3    13
4    14
5    15
6    16
8    18
10   20