DF
primer exptname concentrate timepoints replicate day realConc
Acan 0hr 55mM 0 b1 011311 0.0002771494
Actb 0hr 55mM 0 b1 011311 0.0061298654
Atf7ip2 0hr 55mM 0 b1 011311 0.0015750373
Atp2c1 0hr 55mM 0 b1 011311 0.0010109867
Casp6 0hr 55mM 0 b1 011311 0.0035939088
Col10a1 0hr 55mM 0 b1 011311 0.0133760938
Acan 0hr 55mM 0 b1 011311 0.0002771494
Actb 0hr 55mM 0 b1 011311 0.0061298654
Atf7ip2 0hr 55mM 0 b1 011311 0.0015750373
Atp2c1 0hr 55mM 0 b1 011311 0.0010109867
Casp6 0hr 55mM 0 b1 011311 0.0035939088
Col10a1 0hr 55mM 0 b1 011311 0.0133760938
我有角色矢量:
ges <- c('Acan','Casp6')
我只想要$ primer == ges
的行我试过
df[df$primer == ges,]
但它只返回等于这两个字符的第一行,而不是数据框中等于此的所有行
我觉得这很荒谬但是我搞砸了某个基本的
帮助兄弟出去
答案 0 :(得分:6)
==
将逐元素检查元素。矢量回收在这里发挥作用;它将检查引物的第一个元素对ges的第一个元素,第二个元素的引物对ges的第二个元素,引物的第三个元素对ges的第一个元素(由于回收)等等等等。您真正想要的是使用%in%
运算符来检查引物的元素是否在向量ge中。
df[df$primer %in% ges,]