значение na не является членом? - PullRequest
0 голосов
/ 30 апреля 2018

привет, я только начал изучать скалу. и просто следуйте инструкциям в udemy. Я следовал тому же коду, но дал мне ошибку. я понятия не имею об этой ошибке.

и это мой код

import org.apache.spark.ml.classification.LogisticRegression
import org.apache.spark.sql.SparkSession
import org.apache.log4j._
import org.apache.spark.ml.feature.{CountVectorizer, CountVectorizerModel}
import org.apache.spark.ml.feature.Word2Vec
import org.apache.spark.ml.linalg.Vector
import org.apache.spark.sql.Row


Logger.getLogger("org").setLevel(Level.ERROR)

val spark = SparkSession.builder().getOrCreate()
val data = spark.read.option("header","true").
            option("inferSchema","true").
            option("delimiter","\t").
            format("csv").
            load("dataset.tsv").
            withColumn("subject", split($"subject", " "))

val logRegDataAll = (data.select(data("label")).as("label"),$"subject")
val logRegData = logRegDataAll.na.drop()

и дай мне ошибку вот так

scala> :load LogisticRegression.scala
Loading LogisticRegression.scala...
import org.apache.spark.ml.classification.LogisticRegression
import org.apache.spark.sql.SparkSession
import org.apache.log4j._
import org.apache.spark.ml.feature.{CountVectorizer, CountVectorizerModel}
import org.apache.spark.ml.feature.Word2Vec
import org.apache.spark.ml.linalg.Vector
import org.apache.spark.sql.Row
spark: org.apache.spark.sql.SparkSession = org.apache.spark.sql.SparkSession@1efcba00
data: org.apache.spark.sql.DataFrame = [label: string, subject: array<string>]
logRegDataAll: (org.apache.spark.sql.Dataset[org.apache.spark.sql.Row], org.apache.spark.sql.ColumnName) = ([label: string],subject)
<console>:43: error: value na is not a member of (org.apache.spark.sql.Dataset[org.apache.spark.sql.Row], org.apache.spark.sql.ColumnName)
       val logRegData = logRegDataAll.na.drop()
                                      ^

спасибо за помощь

1 Ответ

0 голосов
/ 30 апреля 2018

Вы можете ясно видеть

val logRegDataAll = (data.select(data("label")).as("label"),$"subject")

Возвращает

(org.apache.spark.sql.Dataset[org.apache.spark.sql.Row], org.apache.spark.sql.ColumnName)

Итак, есть дополнительные паратезы ) данных («метка»)), которые должны быть data.select(data("label").as("label"),$"subject") на самом деле.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...