Как создать столбец BinaryType, используя несколько столбцов PySpark Dataframe?
Я недавно начал работать с pySpark, поэтому не знаю о многих деталях, касающихся этого.
Я пытаюсь создать столбец BinaryType во фрейме данных? Но изо всех сил, чтобы сделать это...
например, давайте возьмем простой DF
df.show(2)
+---+----------+
| col1|col2|
+---+----------+
| "1"| null|
| "2"| "20"|
+---+----------+
Теперь я хочу иметь третий столбец "col3" с BinaryType, как
| col1|col2| col3|
+---+----------+
| "1"| null|[1 null]
| "2"| "20"|[ 2 20]
+---+----------+
Как мне это сделать?
1 ответ
Попробуй это:
a = [('1', None), ('2', '20')]
df = spark.createDataFrame(a, ['col1', 'col2'])
df.show()
+----+----+
|col1|col2|
+----+----+
| 1|null|
| 2| 20|
+----+----+
df = df.withColumn('col3', F.array(['col1', 'col2']))
df.show()
+----+----+-------+
|col1|col2| col3|
+----+----+-------+
| 1|null| [1,]|
| 2| 20|[2, 20]|
+----+----+-------+