0

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) と入力すると、このメッセージが表示されます (関数 (クラス、fdef、mtable) でエラーが発生しました:署名 '"NULL" の関数 'isNull' の継承されたメソッドが見つかりません)

4

1 に答える 1

2

これは、 isNull がベクターではなく DataFrame の列を想定しているためです。エントリが 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 であることに気付くでしょうが、関数がどのように機能しているかは既にわかります。

于 2015-07-28T11:14:28.637 に答える