Использование функции карты в кадре данных Spark - PullRequest
0 голосов
/ 07 апреля 2020

У меня есть фрейм данных (только с 1 строкой), например:

+--------------------+--------------------+
|                  _1|                  _2|
+--------------------+--------------------+
|[day, 0, 0.0, 0.0...|[[1, 9.6389346249...|
+--------------------+--------------------+

Схема фрейма данных выглядит следующим образом:

 |-- _1: struct (nullable = true)
 |    |-- colA: string (nullable = true)
 |    |-- colB: long (nullable = true)
 |    |-- colC: double (nullable = true)
 |    |-- colD: double (nullable = true)
 |    |-- colE: double (nullable = true)
 |    |-- colF: double (nullable = true)
 |    |-- colG: double (nullable = true)
 |    
 |
 |-- _2: array (nullable = true)
 |    |-- element: struct (containsNull = true)
 |    |    |-- _1: integer (nullable = true)
 |    |    |-- _2: double (nullable = true)

Теперь я использовал карту функция внутри фрейма данных для итерации каждой строки и вызова пользовательской функции, подобной этой

df.map(x => {
        someFunc(x._1, x._2)
      }).persist

Я ожидал, что вызов someFun c () будет только один раз. Так как есть только 1 строка данных. Но его называют 3 раза. Почему someFun c () трижды вызывается?

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