将变量名添加到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)]);
}
我在名为 "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)]);
}