我对stackoverflow和R还是陌生的,所以我希望我不违反任何礼节:)
所以我有一个相当大的基因表达水平数据框,称为expression
,我想根据列名中出现的词来定义子集。
gene.adk1 gene.adk2 gene.adk3 gene.bas1 gene.bas2 etc
1 2 1 4 6
这只是数据框的一个小示例版本。我想做的是定义一个子集,只包含标题中带有“ adk”的列,而另一个子集中标题中包含“ bas”的列]
我所做的是按字母顺序对列名称进行排序,并查看我的数据框,以找出标题中包含“ adk”的列数。然后,我使用子集函数定义了子集:
adk <- subset.data.frame(expression, select = c(1:3))
是否有更优雅的方法?也许通过列名称中的单个单词(例如“ adk”)定义子集?
提前感谢
Marius
我通常对stackoverflow和R还是陌生的,所以我希望我不违反任何礼节:)因此,我有一个相当大的基因表达水平数据框,称为expression,我想定义子集...
我们可以使用grep
匹配列名称中的子字符串'adk'以选择那些列