基于索引的DataFrame的Rowwise子集

时间:2014-07-02 16:48:18

标签: python pandas indexing subset

我有两个具有相同类型索引(userid)的DataFrame,但它们都不是另一个的子集。我想删除较小的所有行,这些行不会出现在较大的行中。我的印象是这是loc函数的预期用途,但实际上它增加了行。

Largedf.shape
Out[2]: (7341253, 39)

Smalldf.shape
Out[3]: (588939, 2)

Smalldf = Smalldf.loc[Largedf.index]

Smalldf.shape
Out[5]: (7341253, 2)

Largedf.shape
Out[6]: (7341253, 39)

Smalldf中有几个用户不在Largedf中,所以我原本预计它会变小。有没有更好的方法来做到这一点?请注意,行无论如何都没有排序,我唯一需要跟踪的是索引。

1 个答案:

答案 0 :(得分:1)

isin怎么样?

Smalldf = Smalldf[Smalldf.index.isin(Largedf.index))]