如何对由数字、NA和NaN组成的向量进行舍入才能保持数字顺序,同时不忽略NA或NaN。
x = c(2,3,4,NA,"NaN",3, 5)
round(x,2) #does not work
编辑:round(x, 2) 中的错误:数学函数的非数字参数
如何对由数字、NA和NaN组成的向量进行舍入才能保持数字顺序,同时不忽略NA或NaN。
x = c(2,3,4,NA,"NaN",3, 5)
round(x,2) #does not work
编辑:round(x, 2) 中的错误:数学函数的非数字参数
x
是一个字符向量,因为它包含字符 "NaN"
。将 x
转换为数值型会有帮助。
x = c(2,3,4,NA,"NaN",3, 5)
class(x) # To see the class of x
round(as.numeric(x),2)
NaN周围不应该有引号。"NaN"是一个字符字符串;NaN是数值型的。如果这种情况发生在你的玩具示例之外,那么说明你的代码其他地方存在问题。
x = c(2,3,4,NA,NaN,3, 5)
round(x,2)
# [1] 2 3 4 NA NaN 3 5
"NaN"
更改为NaN
。 - user554546as.numeric(x)
。 - orizon library(plyr)
round_any(x,1)
[1] 2 3 4 NA NaN 3 5
NaN != "NaN"
。修复它。 - user554546