将变量名添加到for语句中的列

Adding variable name to column in for statement

我在名为 "Gr1"、"Gr2"、...、"Gr10" 的 table 中有多个列。

我想将 class 从字符转换为整数。我想以动态方式进行,我正在尝试这个,但它不起作用:

for (i in 1:10) {
  Col <- paste0('Students1$Gr',i)
  Col <- as.integer(Col)
                 }

我的objective这里是知道如何动态添加for变量到列名。类似于:

for (i in 1:10) {
  Students1$Gr(i) <- as.integer(Students1$Gr(i))
                }

欢迎任何想法。 非常感谢你, 马蒂亚斯

# Example matrix
xm <- matrix(as.character(1:100), ncol = 10);
colnames(xm) <- paste0('Gr', 1:10);

# Example data frame
xd <- as.data.frame(xm, stringsAsFactors = FALSE);

# For matrices, this works
xm <- apply(X = xm, MARGIN = 2, FUN = as.integer);

# For data frames, this works
for (i in 1:10) {
    xd[ , paste0('Gr', i)] <- as.integer(xd[ , paste0('Gr', i)]);
    }