选择具有部分字符串变量的列

时间:2016-03-18 05:51:52

标签: r

我有一个名为

的列的数据框
x <- c("30 days Death Rates from Heart Attack", "30 days Death Rates from Pneumonia")

我有一个传递给函数的变量,它选择相应的列并执行某些计算。该变量包含关键短语,如&#34;心脏病发作&#34;或者&#34;肺炎&#34;但不是整个列名。我想知道是否有办法选择具有这种变量的列。

我尝试使用$,但它不起作用。我尝试过使用[][[]],但它说&#34;选择了未定义的列&#34;。我该怎么办?

1 个答案:

答案 0 :(得分:1)

我们可以使用grep

pat <- "((?i)(h)eart (?i)(a)ttack|(?i)(p)neumonia)"
df1[grep(pat, names(df1))]