as.numeric 不工作
as.numeric is not working
我正在使用 R 开发代码并尝试将其与 PHP 集成。在 as.numeric 之后的这段代码中,值将在 logs.txt 上输出为 NA 并且此 N = '"15","20","30","40","50"'; (来自 PHP)
# my_rscript.R
args <- commandArgs(TRUE)
N <- args[1]
N=c(N)
cat(N,file="c:/rlogs.txt",append=TRUE)
N=as.numeric(as.character(N))
cat(N,file="c:/rlogs.txt",append=TRUE)
png(filename="temp.png", width=500, height=500)
hist(N, col="lightblue")
dev.off()
非常感谢你在这方面的帮助。
没有更多细节,您首先需要将输入从单个字符串转换为向量。
也就是需要strsplit
,这里gsub
去掉多余的引号:
N <- '"15","20","30","40","50"'
as.numeric(N)
# [1] NA
# Warning message:
# NAs introduced by coercion
N <- strsplit(N, ',')[[1]]
N
# [1] "\"15\"" "\"20\"" "\"30\"" "\"40\"" "\"50\""
N <- gsub('"', '', N)
N
# [1] "15" "20" "30" "40" "50"
N <- as.numeric(N)
N
# [1] 15 20 30 40 50
我正在使用 R 开发代码并尝试将其与 PHP 集成。在 as.numeric 之后的这段代码中,值将在 logs.txt 上输出为 NA 并且此 N = '"15","20","30","40","50"'; (来自 PHP)
# my_rscript.R
args <- commandArgs(TRUE)
N <- args[1]
N=c(N)
cat(N,file="c:/rlogs.txt",append=TRUE)
N=as.numeric(as.character(N))
cat(N,file="c:/rlogs.txt",append=TRUE)
png(filename="temp.png", width=500, height=500)
hist(N, col="lightblue")
dev.off()
非常感谢你在这方面的帮助。
没有更多细节,您首先需要将输入从单个字符串转换为向量。
也就是需要strsplit
,这里gsub
去掉多余的引号:
N <- '"15","20","30","40","50"'
as.numeric(N)
# [1] NA
# Warning message:
# NAs introduced by coercion
N <- strsplit(N, ',')[[1]]
N
# [1] "\"15\"" "\"20\"" "\"30\"" "\"40\"" "\"50\""
N <- gsub('"', '', N)
N
# [1] "15" "20" "30" "40" "50"
N <- as.numeric(N)
N
# [1] 15 20 30 40 50