繁体   English   中英

使用 spark/scala 按照 json 文件中首先列出的列的顺序将 json 转换为数据帧

[英]Convert json to dataframe in order of which column listed first in json file using spark/scala

我使用spark/scala将我的 json 转换为数据帧。 例如,下面是json

在此处输入图片说明

我希望我的数据框按顺序打印出以下内容(目前按字母顺序打印) 在此处输入图片说明

使用终端进行转换: val df_in=spark.read.option("multiLine","true").json("/Users/testfile/tests.json")df_in.show()

当我运行上面的代码时,它会将 json 文件转换为 df 但不是按照我想要的顺序 - 有没有办法按照我的 json 文件中首先列出的列的顺序打印出来?

您可以定义模式并在读取文件时使用它。

val schema="FirstName STRING,LastName STRING,MiddleName STRING,username STRING,password STRING"

val df_in=spark.read.option("multiLine","true").schema(schema).json("/Users/testfile/tests.json")

如果您指定架构,它也会避免额外的扫描。

您还可以使用列的选择和选择

df = df.select("FirstName", "LastName", "MiddleName", "username" "password").show()

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM