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

我們怎樣才能加入兩個pyspark dataframes並排(不使用加入,相當於pd.concat(熊貓))?我想加入兩個超大dataframes每個是5000萬年的。

TrinaDe
新的貢獻者二世

我的兩個dataframes樣子new_df2_record1 new_df2_record2和預期輸出dataframe我希望就像new_df2:

0693年f000007oos6aak

我嚐試了如下的代碼:

如果我打印new_df2的前5行,它使輸出像預期的那樣但是我不能打印總數或總列數它包含的數量。給出了錯誤:

“錯誤執行人:在階段任務2.0 6.0 (TID異常:smiling_face_with_sunglasses:

org.apache.spark.api.python。最後PythonException:回溯(最近電話):

python文件“D: \火花\ \ lib \ pyspark.zip \ pyspark \工人。py”, 604行,在主

python文件“D: \火花\ \ lib \ pyspark.zip \ pyspark \工人。py”, 596行,在過程

python文件“D: \火花\ \ lib \ pyspark.zip \ pyspark \序列化器。在dump_stream py”, 259行

出現(itertools vs =列表。islice(迭代器,批處理))

python文件“D: \火花\ \ lib \ pyspark.zip \ pyspark \序列化器。在_load_stream_without_unbatching py”, 326行

“批量:(% d % d)”% (len(key_batch), len(val_batch)))

ValueError:不能反序列化PairRDD不同批次的產品數量:(4096、8192)“從pyspark.sql。類型進口StructType

new_df2_record2 = new_df2_record2.drop (record1, record2)模式= StructType (new_df2_record1.schema。字段+ new_df2_record2.schema.fields) df1df2 = new_df2_record1.rdd.zip (new_df2_record2.rdd)。地圖(λx: x [0] + [1]) new_df2 =火花。createDataFrame (df1df2模式)

new_df2.show(5)打印(new_df2.count (), len (new_df2.columns))

2回答2

TrinaDe
新的貢獻者二世

中的代碼更加易讀的格式:

0693年f000007oroyaac

Kaniz
社區經理
社區經理

嗨@Trina De,得到所需的輸出嗎?

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

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

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

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

Baidu
map