如何在 rJava 中表示 NA
How to represent NA in rJava
我有一个 scala 程序,它生成一些要在 R 中使用的时间序列数据。数据值是双精度值,但有一些缺失值,但我不知道我应该如何在我的 scala 程序中表示这些 NA 值?
您可以使用类型选项[A]。例如这篇文章:http://danielwestheide.com/blog/2012/12/19/the-neophytes-guide-to-scala-part-5-the-option-type.html
使用org.rosuda.REngine.REXPDouble.NA
向R表明缺少数据。它是 Double.NaN
的一种类型,但与 Java 通常使用的类型不同(因此您必须指定它)。您可以使用org.rosuda.REngine.REXPDouble.isNA
来验证NaN
是R 的缺失数据NaN 还是普通的。
就其价值而言,目前的价值似乎是 0x7ff00000000007a2L
,您可以像这样自己将其放入双倍:java.lang.Double.longBitsToDouble(0x7ff00000000007a2L)
。不过,使用 REXPDouble.NA
可能更安全。
我有一个 scala 程序,它生成一些要在 R 中使用的时间序列数据。数据值是双精度值,但有一些缺失值,但我不知道我应该如何在我的 scala 程序中表示这些 NA 值?
您可以使用类型选项[A]。例如这篇文章:http://danielwestheide.com/blog/2012/12/19/the-neophytes-guide-to-scala-part-5-the-option-type.html
使用org.rosuda.REngine.REXPDouble.NA
向R表明缺少数据。它是 Double.NaN
的一种类型,但与 Java 通常使用的类型不同(因此您必须指定它)。您可以使用org.rosuda.REngine.REXPDouble.isNA
来验证NaN
是R 的缺失数据NaN 还是普通的。
就其价值而言,目前的价值似乎是 0x7ff00000000007a2L
,您可以像这样自己将其放入双倍:java.lang.Double.longBitsToDouble(0x7ff00000000007a2L)
。不过,使用 REXPDouble.NA
可能更安全。