Gai*_*tar 1 r numeric vector character
我的数据框中有一列,每个单元格中都有一个或多个数字.如果有很多数字,它们会分隔一个空格.此外,R将它们视为字符向量.我真的很想将它们转换成数字(如果可能的话,马上把它们加起来).例如,我的一个细胞可能看起来像
6 310 21 20 64
Run Code Online (Sandbox Code Playgroud)
我试过了
Reduce(sum,L)
Run Code Online (Sandbox Code Playgroud)
和
as.numeric(L)
Run Code Online (Sandbox Code Playgroud)
但我总是收到警告信息:
通过强制引入的NA
这里,L只是我创建的一个示例对象,用于放入我的一个单元格.
这里有两个选项可以在矢量上正常工作(看起来像)
str1 <- c("6 310 21 20 64", "6 310 21 20 64","6 310 21 20 64")
rowSums(read.table(text = str1))
## [1] 421 421 421
Run Code Online (Sandbox Code Playgroud)
或使用 data.table::fread
rowSums(data.table::fread(paste(str1, collapse = "\n")))
# [1] 421 421 421
Run Code Online (Sandbox Code Playgroud)
或者如@akrun的评论中所述,您可以使用Reduce(`+`,...)而不是rowSums(...)在两种情况下都避免marix转换