python - 如何将 spark 数据框列名和行数据转换为 json 数据
问题描述
我有一个 pyspark 数据框
spark = SparkSession\
.builder\
.appName("NPS_TF")\
.getOrCreate()
df2 = spark.createDataFrame([
("unknown", 1,2,3)
], ["Assign", "xs[0]","xs[1]","xs[2]"])
df2.limit(1).show()
如何将部分数据框列名和第一行数据转换为这种 json 格式:
{"fields": ["xs[0]", "xs[1]", "xs[2]"], "values": [[1,2,3]]}
解决方案
检查此解决方案
df2 = spark.createDataFrame([("unknown", 1,2,3)], ["Assign", "xs[0]","xs[1]","xs[2]"])
fields = ['xs[0]', 'xs[1]', 'xs[2]']
values = df2.rdd.map(lambda p: [p[field] for field in fields]).collect()
json_obj = {
'fields': fields,
'values': values
}
推荐阅读
- excel - 如何确定一个宏是否被excel中的另一个宏调用,并相应地执行代码
- azure-data-lake - 我可以在 USQL 中使用正则表达式吗?
- vba - 将所有选定的工作表设置为相同的可见区域
- ruby-on-rails - 如何使用 Rails 从网站下载图像?
- react-native - 你如何在 react-native-gifted-chat 中自动对焦输入框
- javascript - 你如何将参数传递给react-intl中的defineMessages?
- time-series - 预测客户下个月的购买情况
- javascript - HTML AJAX 向后端发送空对象
- linux - 已执行 Cron 脚本但没有输出
- wordpress - 启用 WEBSITES_ENABLE_APP_SERVICE_STORAGE 后 WordPress for Linux Web App 丢失