Создать DataFrame с столбцом Arraytype в pysparkPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Создать DataFrame с столбцом Arraytype в pyspark

Сообщение Anonymous »

Я пытаюсь создать новый DataFrame с столбцом ArrayType () , я пытался с определением схемы и без определения, но не смог получить желаемый результат. Мой код ниже со схемой < /p>
from pyspark.sql.types import *
l = [[1,2,3],[3,2,4],[6,8,9]]
schema = StructType([
StructField("data", ArrayType(IntegerType()), True)
])
df = spark.createDataFrame(l,schema)
df.show(truncate = False)
< /code>
Это дает ошибку: < /p>

valueError: длина объекта (3) не совпадает с длиной полей
(1) < /p>
< /blockquote>
желаемый вывод: < /p>
+---------+
|data |
+---------+
|[1,2,3] |
|[3,2,4] |
|[6,8,9] |
+---------+

edit:
Я нашел странную вещь (по крайней мере для меня):
Если мы используем следующий код, он дает ожидаемый результат: < /p>
import pyspark.sql.functions as f
data = [
('person', ['john', 'sam', 'jane']),
('pet', ['whiskers', 'rover', 'fido'])
]

df = spark.createDataFrame(data, ["type", "names"])
df.show(truncate=False)
< /code>
Это дает следующий ожидаемый вывод: < /p>
+------+-----------------------+
|type |names |
+------+-----------------------+
|person|[john, sam, jane] |
|pet |[whiskers, rover, fido]|
+------+-----------------------+
< /code>
Но если мы удалим первый столбец, то он дает неожиданный результат. < /p>
import pyspark.sql.functions as f
data = [
(['john', 'sam', 'jane']),
(['whiskers', 'rover', 'fido'])
]

df = spark.createDataFrame(data, ["names"])
df.show(truncate=False)
< /code>
Это дает следующий вывод: < /p>
+--------+-----+----+
|names |_2 |_3 |
+--------+-----+----+
|john |sam |jane|
|whiskers|rover|fido|
+--------+-----+----+


Подробнее здесь: https://stackoverflow.com/questions/640 ... in-pyspark
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Pyspark Maptype с Arraytype в качестве броска ключей
    Anonymous » » в форуме Python
    0 Ответы
    4 Просмотры
    Последнее сообщение Anonymous
  • Pyspark Maptype с Arraytype в качестве броска ключей
    Anonymous » » в форуме Python
    0 Ответы
    4 Просмотры
    Последнее сообщение Anonymous
  • Pyspark Arraytype Использование в преобразовании в государство
    Anonymous » » в форуме Python
    0 Ответы
    1 Просмотры
    Последнее сообщение Anonymous
  • Pyspark Arraytype Использование в преобразовании в государство
    Гость » » в форуме Python
    0 Ответы
    2 Просмотры
    Последнее сообщение Гость
  • Pyspark Arraytype Использование в преобразовании в государство
    Anonymous » » в форуме Python
    0 Ответы
    5 Просмотры
    Последнее сообщение Anonymous

Вернуться в «Python»