假设我有一个向量 y,我想检查 y 中的每个元素是否为整数,如果不是,则以错误消息停止。我试过 is.integer(y),但它不起作用。
最佳答案
最简单(也是最快!)的事情可能是这样的:
stopifnot( all(y == floor(y)) )
......所以尝试一下:
y <- c(3,4,9)
stopifnot( all(y == floor(y)) ) # OK
y <- c(3,4.01,9)
stopifnot( all(y == floor(y)) ) # ERROR!
如果您想要更好的错误消息:
y <- c(3, 9, NaN)
if (!isTRUE(all(y == floor(y)))) stop("'y' must only contain integer values")
关于r - 如何检查向量中的每个元素在R中是否为整数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10113933/