将数据帧中的多列从字符格式转换为数字格式的最有效方法是什么?
我有一个名为DF的数据帧,包含所有字符变量.
我想做点像
for (i in names(DF){
DF$i <- as.numeric(DF$i)
}
非常感谢.
将数据帧中的多列从字符格式转换为数字格式的最有效方法是什么?
我有一个名为DF的数据帧,包含所有字符变量.
我想做点像
for (i in names(DF){
DF$i <- as.numeric(DF$i)
}
非常感谢.
你可以试试
DF <- data.frame("a" = as.character(0:5),
"b" = paste(0:5, ".1", sep = ""),
"c" = letters[1:6],
stringsAsFactors = FALSE)
# Check columns classes
sapply(DF, class)
# a b c
# "character" "character" "character"
cols.num <- c("a","b")
DF[cols.num] <- sapply(DF[cols.num],as.numeric)
sapply(DF, class)
# a b c
# "numeric" "numeric" "character"