count具有相同名称R的列数

时间:2017-01-31 08:46:25

标签: r dataframe count col

我有一个大数据框,其短版本如下:

> test
  SRA_Ucon SRA_Uinc SRA_Ucon.1 MID_Rinc MID_Rinc.1 SRA_Ucon.2 MID_cueR MID_Rinc.2 Neut_con Neut_con.1
1        0        0          0        0          0          0        0          0        0          0
2        0        0          0        0          0          0        0          0        0          0

我想计算以相同名称开头的列数。例如,在这种情况下,我想计算 SRA_Ucon 列的数量。这里有三个。所以,我希望获得数字" 3"的输出。这样做的最佳方式是什么?

2 个答案:

答案 0 :(得分:2)

您可以在列名称上使用grep并检查响应的长度。

 length(grep(x = colnames(test), pattern = "^SRA_Ucon"))

答案 1 :(得分:1)

我们也可以将substring==

一起使用
sum(substring(colnames(test), 1, 8)== "SRA_Ucon")
#[1] 3