R中有什么东西可以调用df$col1:df$col5
吗?
我想用as.numeric
将字符元素转换为数字,所以我想做像as.numeric(df$col1:df$col5
)之类的东西,将这些列中的所有元素转换为数字。
答案 0 :(得分:3)
df = mtcars
如果您想按列号访问多个列
lapply(df[,c(1:3,5)], as.numeric) #Or as.character if you want
如果您想通过colnames访问
lapply(df[,c('mpg','cyl')], as.numeric)
答案 1 :(得分:0)
您可以使用数字索引来获取一系列列,如评论中所示。
但是如果列不按顺序排列,你可以构造一个名称向量,并使用它(而不是明确地写出名称,如在另一个答案中那样)
my_cols <- paste0('col', 1:5)
my_df[, my_cols] <- lapply(my_df[, my_cols], as.numeric)