开发者社区> 问答> 正文

Pyspark在将数据框行转换为字典时保留字段顺序

我有一个包含以下数据的数据框df:

Name        Value     Code
a           1         1
b           2         1
c           3         2
d           4         2

我想将此数据帧转换为字典。我尝试了asDict():

map(lambda row: row.asDict(), df.collect())

它给出以下输出:

[{'Code': 1, 'Name': u'a', 'Value': 1}, {'Code': 1, 'Name': u'b', 'Value': 2}, {'Code': 2, 'Name': u'c', 'Value': 3}, {'Code': 2, 'Name': u'd', 'Value': 4}]

在此对字段进行排序。但是我想保留字段的顺序。

我的输出应如下所示:

[{'Name': u'a', 'Value': 1,'Code': 1}, {'Name': u'b', 'Value': 2,'Code': 1}, {''Name': u'c', 'Value': 3,Code': 2}, {'Name': u'd', 'Value': 4,'Code': 2}]

除了使用asDict()方法以外,还有其他方法可以实现此目的吗?

展开
收起
几许相思几点泪 2019-12-16 20:20:38 853 0
0 条回答
写回答
取消 提交回答
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载