我有一个Dataframe,其模式如下:
root
|-- column: struct (nullable = true)
| |-- column-string: string (nullable = true)
|-- count: long (nullable = true)
我想做的是:
去掉struct—或者我的意思是“promote”列字符串,所以我的Dataframe只有2列—列字符串和计数
然后,我想将列字符串拆分为3个不同的列,这样就得到了架构:
列字符串中的文本总是符合以下格式:some text,text,moretext
有人知道这怎么可能吗?
我在用pyspark python。
另外,我对pyspark还不熟悉&我对struct格式不太了解,也找不到如何在我的文章中写一个例子使其可复制-抱歉。
2条答案
按热度按时间kgqe7b3p1#
你也可以使用
from_csv
要将逗号分隔的字符串转换为结构,然后展开结构:请注意,列名中最好不要使用连字符,因为它们是为减法保留的。下划线更好。
0kjbasz62#
您可以选择
column-string
使用column.column-string
,只需用逗号分隔即可得到三列: