4

我想这已经在某个地方得到了回答,所以提前道歉,但我试图搜索没有运气,所以......

....在 R 中处理 x + 0.0i 形式的数字的聪明方法是什么?

例如假设我们有

y <- 1 + 0.0i

所以当然:

y == 1

是真的。那么强制 y 为 1 的最佳方法是什么。

编辑:

我不想丢弃虚构的部分,除非round(Im(y)) == 0但我希望有一种方法可以避免对此进行明确测试。

4

1 回答 1

3

想不出比这更好的了(是的,令人惊讶的是没有内置的虚构挤压功能......或者也许有人会想出一个)

f <- function(x) {
   if (all(Im(z <- zapsmall(x))==0)) as.numeric(z) else x
}
于 2012-11-22T21:45:57.900 回答