toSeq.toDS (), дающий java.lang.NullPointerException

Вероятно, вы хотите сделать

df['Normalized'] = np.where(df['Currency'] == '$', df['Budget'] * 0.78125, df['Budget'])
-2
задан Shaido 27 March 2019 в 06:50
поделиться

1 ответ

Похоже, это не проблема с toSeq.toDS(). Часть кода, которым вы поделились, должна работать без каких-либо ошибок / исключений. Я подготовил тестовые данные, как показано ниже, и смог успешно работать. Пожалуйста, найдите образец кода, как показано ниже. Это должно быть проблемой с другим фрагментом кода. Я бы попросил вас поделиться всем кодом.

import org.apache.spark.sql.SparkSession
import scala.collection.mutable.ListBuffer

object TestToSeqToDs extends App {

  val spark = SparkSession
    .builder()
    .master("local")
    .appName("Test toSeq.toDS() function")
    .getOrCreate()

  def jList(): Option[Seq[String]] = {
    try {
      Some(Seq(("john"), ("Edward")))
    } catch {
      case e: Exception => None
    }
  }

  var w = new ListBuffer[String]()

  jList match {
    case Some(x) => {
      for (record <- x) {
        w += record
      }
    }
    case None => println("That didn't work.")
  }

  import spark.implicits._

  val jsonDataSet = w.toSeq.toDS()
   //OR
  val jsonDataSet = w.toDS()

  println(jsonDataSet.show())

+------+
| value|
+------+
|  john|
|Edward|
+------+

}

Спасибо!

0
ответ дан KZapagol 27 March 2019 в 06:50
поделиться
Другие вопросы по тегам:

Похожие вопросы: