取消
顯示的結果
而不是尋找
你的意思是:

如何將每一行的df數組的行(行)列表

SailajaB
重視貢獻三世

你好,

如何將每一行的dataframe數組的行嗎?

這是我們的場景中,我們需要傳遞每一行的dataframe函數作為dict應用轉換的關鍵水平。但正如我們的數據是非常巨大的,我們不能用收集df.toJson () .collect()遍曆每一行,因為它隻使用驅動程序的內存。

請在這裏添加你的建議。

謝謝你!

1接受解決方案

接受的解決方案

Dan_Z
尊敬的貢獻者

你有兩個選擇:

  1. 常規PySpark UDF,你定義一個函數,接受一個原始DF作為輸入,並返回一行。看到文檔
  2. 熊貓UDF,你定義一個函數,一塊在DF的行作為輸入,並返回的行。看到文檔

選項2是大多數性能,但它涉及在許多行操作。然而,一個常見的方法是定義一個行級函數PandasUDF和稱之為使用一個蘋果。看一看文檔和嚐試一些選項。

在原帖子查看解決方案

5回複5

Hubert_Dudek1
尊敬的貢獻者三世

SailajaB
重視貢獻三世

@Hubert杜德克,謝謝你的回複。

我們是新的亞行。使用以下代碼,尋找一個優化的方法

.collect dfJSONString = df.toJSON () ()

stringList = []

在dfJSONString行:

# = = = = = = = = # Unflatten JSON字符串

jsonString = unflatten (json.loads(行),dictreg [reg.upper ()))

stringList.append (json.dumps (jsonString))

謝謝你!

Dan_Z
尊敬的貢獻者

你有兩個選擇:

  1. 常規PySpark UDF,你定義一個函數,接受一個原始DF作為輸入,並返回一行。看到文檔
  2. 熊貓UDF,你定義一個函數,一塊在DF的行作為輸入,並返回的行。看到文檔

選項2是大多數性能,但它涉及在許多行操作。然而,一個常見的方法是定義一個行級函數PandasUDF和稱之為使用一個蘋果。看一看文檔和嚐試一些選項。

嗨@Sailaja B,

隻是一個友好的後續。你看到丹的反應嗎?你有任何後續問題或你可以選擇丹的最好的答案嗎?

歡迎來到磚社區:讓學習、網絡和一起慶祝

加入我們的快速增長的數據專業人員和專家的80 k +社區成員,準備發現,幫助和合作而做出有意義的聯係。

點擊在這裏注冊今天,加入!

參與令人興奮的技術討論,加入一個組與你的同事和滿足我們的成員。

Baidu
map