如何在pandas中选择具有多个值的多行

如何在pandas中选择具有多个值的多行,pandas,Pandas,我有一个数据框和一个列表,如下所示 id title description 0 17810732 "nn nn." "nnnn nnnn" 1 17810731 "mm mm." "mmmm mmmm" 2 17810739 "ll ll." "llll llll" 3 17810738 "jj jj." "jjjj jjjj" ids = [17810738, 17810731] id title

我有一个数据框和一个列表,如下所示

         id     title     description
0  17810732  "nn nn."  "nnnn nnnn"
1  17810731  "mm mm."  "mmmm mmmm"
2  17810739  "ll ll."  "llll llll"
3  17810738  "jj jj."  "jjjj jjjj"

ids = [17810738, 17810731]
         id     title     description
0  17810738  "jj jj."  "jjjj jjjj"
1  17810731  "mm mm."  "mmmm mmmm"
我想得到一个数据帧,它只包含与
ids
列表对应的行

所以我的输出应该如下

         id     title     description
0  17810732  "nn nn."  "nnnn nnnn"
1  17810731  "mm mm."  "mmmm mmmm"
2  17810739  "ll ll."  "llll llll"
3  17810738  "jj jj."  "jjjj jjjj"

ids = [17810738, 17810731]
         id     title     description
0  17810738  "jj jj."  "jjjj jjjj"
1  17810731  "mm mm."  "mmmm mmmm"
我一直在使用这个代码

for id in ids:
   print(df.loc[df["id"] == id])
但是,它只向每个id返回单独的数据帧,这不是我需要的


如果需要,我很乐意提供更多详细信息。

解决方案采用
isin
方法,因此

df[df['id'].isin(ids)]
会成功的。

df[df.id.isin(ids)]有效