火花斯卡拉 - JSON字符串转换成JSON结构
问题描述:
我有模式的数据帧像下面火花斯卡拉 - JSON字符串转换成JSON结构
|-- aaa: string (nullable = true)
|-- bbb: long (nullable = false)
|-- ccc: string (nullable = true)
|-- ddd: string (nullable = true)
|-- eee: long (nullable = false)
我已经有结果VAL针对以上。
我想要的模式转换如下用火花斯卡拉
|ddd:struct (nullable = true)
|-- aaa: string (nullable = true)
|-- bbb: string (nullable = true)
|-- ccc: string (nullable = true)
|-- eee: string (nullable = true)
请帮
答
您应该使用struct function
第一种方法是使用withColumn
API,如果你不想要原始列可以drop
他们作为
import org.apache.spark.sql.functions._
df.withColumn("ddd", struct(col("aaa"), col("bbb").cast(StringType).as("bbb"), col("ccc"), col("eee").cast(StringType).as("eee"))).drop("aaa", "bbb", "ccc", "eee")
第二个方法是使用select
API作为
df.select(struct(col("aaa"), col("bbb").cast(StringType).as("bbb"), col("ccc"), col("eee").cast(StringType).as("eee")).as("ddd"))
请出示你的努力和发布您的代码。 –
欢迎来到计算器。请给出你的问题的更详细的描述。尽可能包含代码。 –