r - 在r中将多列从字符转换为数字格式

将数据框中的多列从字符格式转换为数字格式的最有效方法是什么?

我有一个名为 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"

https://stackoverflow.com/questions/22772279/

相关文章:

xml - 将每个 XQuery 结果放在一个新行上

c - 如何打印有限数量的字符?

c++ - 使用 std::cout 的表格布局

android - 如果 ScrollView 仅支持一个直接子级,我应该如何使整个布局可滚动?

c# - 很好地显示时间跨度

visual-studio - 如何在 Visual Studio 中自动格式化 XAML 代码?

java - 格式化传递给Java函数的多个参数

java - 如何打印不带逗号的 Double

java - java中具有可变数量参数的字符串格式

formatting - .NET GUID 大写字符串格式