使用sparkR列

时间:2015-07-28 10:43:41

标签: r sparkr

SparkR Column提供了一长串有用的方法,例如' isNull'但是在sparkR中我使用它们有一个问题。我像这样在R中运行sparkR

cd /home/ole/R/spark-1.4.0 ./bin/sparkR --packages com.databricks:spark-csv_2.10:1.0.3 sqlContext

例如我输入此内容 U = C() ISNULL(U) 我收到这条消息 (函数(classes,fdef,mtable)中的错误:   无法为签名'" NULL"

找到函数'isNull'的继承方法

1 个答案:

答案 0 :(得分:2)

这是因为isNull需要DataFrame的列而不是vector。它检查wether条目是否为NULL,它的工作原理如下:

a   <- createDataFrame(sqlContext,data.frame(b=c("a","b",NA,"c"),c=c(1,2,3,4)))
a$d <- isNull(a$b)
collect(a)

它还返回一个(逻辑)列,这就是我将其附加到DataFrame的原因。然而,您会注意到SparkR没有将NA存储为NULL,因此所有逻辑都为FALSE,但您已经看到该函数是如何工作的。