pyspark.pandas.DataFrame.transform¶
-
DataFrame。
變換
( 函數:可調用的[[…],係列),軸:聯盟(int,str]=0,*arg遊戲:任何,* *kwargs:任何 )→DataFrame¶ -
調用
函數
與改變了價值觀和自我生產一係列具有相同的長度作為它的輸入。另請參閱轉換並應用一個函數。
請注意
這個API函數執行一次來推斷的類型可能是非常昂貴的,例如,當聚合或排序後創建的數據集。
為了避免這種情況,指定返回類型
函數
例如,如下:> > >def廣場(x)- >ps。係列(np。int32]:…返回x* *2
pandas-on-Spark使用返回類型提示,不試圖推斷類型。
請注意
這個係列中
函數
實際上是多個熊貓係列的部分整個pandas-on-Spark係列;因此,每個係列的長度是沒有保證的。作為一個例子,一個聚合對每個係列作為一個全球聚合,而是一個聚合的每個部分。見下文:> > >def函數(x)- >ps。係列(np。int32]:…返回x+總和(x)
- 參數
-
- 函數 函數
-
函數用於轉換數據。它必須當熊貓係列傳遞工作。
- 軸 int,默認0或“指數”
-
目前隻能設置為0。
- * args
-
位置參數傳遞給函數。
- * * kwargs
-
關鍵字參數傳遞給函數。
- 返回
-
- DataFrame
-
一個自我DataFrame必須具有相同的長度。
- 提出了
-
- 異常 如果返回的DataFrame長度不同的自我。
另請參閱
-
DataFrame.aggregate
-
隻有執行聚合類型操作。
-
DataFrame.apply
-
DataFrame上調用函數。
-
Series.transform
-
相當於函數級數。
例子
> > >df=ps。DataFrame({“一個”:範圍(3),“B”:範圍(1,4)},列=(“一個”,“B”])> > >df一個B0 0 11 1 22 2 3
> > >def廣場(x)- >ps。係列(np。int32]:…返回x* *2> > >df。變換(廣場)一個B0 0 11 1 42 4 9
你可以省略類型提示,讓pandas-on-Spark推斷它的類型。
> > >df。變換(λx:x* *2)一個B0 0 11 1 42 4 9
多索引的列:
> > >df。列=((“X”,“一個”),(“X”,“B”)]> > >df。變換(廣場)X一個B0 0 11 1 42 4 9
> > >(df*- - - - - -1)。變換(腹肌)X一個B0 0 11 1 22 2 3
您還可以指定額外的參數。
> > >def計算(x,y,z)- >ps。係列(int]:…返回x* *y+z> > >df。變換(計算,y=10,z=20.)X一個B0 20 2121 10442 1044 59069