[英]PySpark RDD to dataframe with list of tuple and dictionary
我已經在pyspark中處理了一些數據,它是具有這種結構的RDD
[(u'991', {'location': 'Australia', 'Age': '27', 'Colour': Pink}), (u'993', {'location': 'Singapore', 'Age': '55', 'Colour': Black}), (u'993', {'location': 'Mexico', 'Age': '12', 'Colour': Blue}), (u'994', {'location': 'USA', 'Age': '24', 'Colour': Red})]
如何將該結構轉換為數據框? 我的最終目標是可以存儲一個包含4列(ID(即991),位置,年齡,顏色)的配置單元表
鑒於字典位於元組中,因此行解決方案似乎不起作用
將每個元組轉換為Row對象,然后調用toDF
方法; Row(ID=t[0], **t[1])
將元組中的字典作為關鍵字參數傳遞給每一行,並使用ID = t[0]
創建一個以ID
為鍵的新鍵值對:
from pyspark.sql import Row
rdd.map(lambda t: Row(ID=t[0], **t[1])).toDF().show()
+---+------+---+---------+
|Age|Colour| ID| location|
+---+------+---+---------+
| 27| Pink|991|Australia|
| 55| Black|993|Singapore|
| 12| Blue|993| Mexico|
| 24| Red|994| USA|
+---+------+---+---------+
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.