在 sum 中使用变量而不是数据 table 列名引用

Use variable instead of data table column name reference in sum

我有一个 table (Table1) 有超过 200 列和数千行的数字数据,其中大部分是月份,列名的格式为 'Jan 2018', 'Feb 2018'等

report[1,2] <- sum(Table1$`Mar 2018`[which(Table1$`Product`=="Apples")])

我不想使用 'Mar 2018',而是想用一个变量名(我们称它为 searchMonth)来替换它。

这可能吗?

我们可以使用 [[ 来做到这一点

searchMonth <- "Mar 2018"
sum(Table1[[searchMonth]][Table1$Product=="Apples"])

仅当列名中有空格或特殊字符时才需要反引号或引号。否则,可以不加引号直接提取