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
Run Code Online (Sandbox Code Playgroud)
我有角色矢量:
ges <- c('Acan','Casp6')
Run Code Online (Sandbox Code Playgroud)
我只想要$ primer == ges的行
我试过了
df[df$primer == ges,]
Run Code Online (Sandbox Code Playgroud)
但它只返回等于这两个字符的第一行,而不是数据帧中与此相等的所有行
我觉得这很荒谬,但是我搞砸了一些基本的东西
帮助一个兄弟
==将通过元素检查平等来做元素.矢量回收在这里发挥作用; 它将检查引物的第一个元素对ges的第一个元素,第二个元素的引物对ges的第二个元素,引物的第三个元素对ges的第一个元素(由于回收)等等等等.你真正想要的是使用%in%操作符来检查引物的元素是否在vector ges中.
df[df$primer %in% ges,]
Run Code Online (Sandbox Code Playgroud)