pyspark.pandas.DataFrame.spark.coalesce

火花。 合並 ( num_partitions:int )→ps.DataFrame

返回一個新的DataFrame到底num_partitions分區。

請注意

這個操作的結果在一個狹窄的依賴性,例如如果你從1000個分區到100個分區,不會出現洗牌,而不是每個100個新分區將索賠10當前的分區。如果請求更多的分區,它將留在當前分區的數量。然而,如果你正在做一個激烈的融合,如num_partitions = 1,這可能會導致你的計算發生在節點少於你喜歡(例如一個節點在num_partitions = 1)的情況下,為了避免這種情況,你可以叫重新分配()。這將添加一個洗牌一步,但意味著當前上遊分區並行執行(每無論當前分區)。

參數
num_partitions int

目標分區的數量。

返回
DataFrame

例子

> > >psdf=psDataFrame({“年齡”:(5,5,2,2),“名稱”:(“Bob”,“Bob”,“愛麗絲”,“愛麗絲”]})set_index(“年齡”)> > >psdfsort_index()的名字年齡2愛麗絲2愛麗絲5鮑勃5鮑勃> > >new_psdf=psdf火花合並(1)> > >new_psdfto_spark()抽樣getNumPartitions()1> > >new_psdfsort_index()的名字年齡2愛麗絲2愛麗絲5鮑勃5鮑勃