根据vector里的值对DataFrame数据进行选取

大家好,
假设我现在有一个DataFrame 名字为dt,其中第一列是我的数据ID,比如1,2,3,4,5…
我有一个Vecotr 名字为list,里面包含一些特定的ID,[1,3,10,200…]
我想从DataFrame中取出ID在list中的数据,请问该如何实现呢?
我尝试过

dt[in.(dt[:,1],list),:]

但是报错了

如果ID是严格按顺序的,你可以用数组做索引

否则应该传递布尔数组进行高级索引,可以用[item in ids
for …]生成数组

dt[in.(df[:,1], Ref(list)), :]

执行.广播的时候,对整体索引需要添加Ref

2 个赞