python pandas-基于其他dataframe列中的值获取dataframe片段

python pandas-基于其他dataframe列中的值获取dataframe片段,python,pandas,dataframe,Python,Pandas,Dataframe,假设我有df1: m n 0 a 1 1 b 2 2 c 3 3 d 4 和df2: n k 0 1 z 1 2 g m n 0 a 1 1 b 2 我只想得到df1的一部分,其中列'n'的值与df2中的值相同: n k 0 1 z 1 2 g m n 0 a 1 1 b 2 最好的方法是什么?这之前看起来很琐碎,但令人惊讶的是,我尝试的一切都没有奏效。比如我试过 df1[df1["n"] == d

假设我有
df1

   m  n
0  a  1
1  b  2
2  c  3
3  d  4
df2

   n  k
0  1  z
1  2  g
   m  n
0  a  1
1  b  2
我只想得到
df1
的一部分,其中列'n'的值与
df2
中的值相同:

   n  k
0  1  z
1  2  g
   m  n
0  a  1
1  b  2
最好的方法是什么?这之前看起来很琐碎,但令人惊讶的是,我尝试的一切都没有奏效。比如我试过

df1[df1["n"] == df2["n"]]
但这给了我

ValueError: Can only compare identically-labeled Series objects

您正在寻找
isin

df1.loc[df1.n.isin(df2.n),:]

温!总是第一个帮忙:D谢谢,这正是我想要的needed@P.Prunesquallor只要有时间检查问题队列,然后选择我首先认识的提问者…-),很明显,我知道你:-)@P.Prunesquallor必须投票接受这个解决方案。