pyspark.pandas.DataFrame.pivot_table¶
-
DataFrame。
pivot_table
( 值:聯盟(任何元組(,…),列表(聯盟[任何元組[,…]]],沒有)=沒有一個,指數:可選(列表(聯盟(任何元組[,…]]]]=沒有一個,列:(任何工會,Tuple,…,沒有)=沒有一個,aggfunc:聯盟(str, Dict[聯盟[任何元組[,…]],str]]=“的意思是”,fill_value:可選(任何]=沒有一個 )→pyspark.pandas.frame.DataFrame¶ -
創建一個spreadsheet-style DataFrame數據透視表。數據透視表的水平將存儲在MultiIndex對象(分層索引)DataFrame索引和列的結果。
- 參數
-
- 值 列聚合。
-
他們應該不到三個列表或一個字符串。
- 指數 列(string)或列的列表
-
如果數組傳遞,它必須相同長度的數據。應該包含字符串列表。
- 列 列
-
列中使用主操作。隻支持一列,它應該是一個字符串。
- aggfunc 函數(字符串),附帶意見,默認的意思
-
如果dict傳遞,關鍵是列聚合和價值函數或函數的列表。
- fill_value 標量,默認沒有
-
值來代替缺失值。
- 返回
-
- 表 DataFrame
例子
> > >df=ps。DataFrame({“一個”:(“foo”,“foo”,“foo”,“foo”,“foo”,…“酒吧”,“酒吧”,“酒吧”,“酒吧”),…“B”:(“一”,“一”,“一”,“兩個”,“兩個”,…“一”,“一”,“兩個”,“兩個”),…“C”:(“小”,“大”,“大”,“小”,…“小”,“大”,“小”,“小”,…“大”),…“D”:(1,2,2,3,3,4,5,6,7),…“E”:(2,4,5,5,6,6,8,9,9)},…列=(“一個”,“B”,“C”,' D ',“E”])> > >dfA B C D E0 foo一小1 21 foo一個大2 42 foo一個大2 53 foo兩個小3 54 foo兩個小3 65條一個大4 66條一個小5 87條兩個小6 98條兩大7 9
第一個例子聚合值之和。
> > >表=df。pivot_table(值=' D ',指數=(“一個”,“B”),…列=“C”,aggfunc=“和”)> > >表。sort_index()C大的小一個B酒吧的一個4.0 - 5兩個7.0 6foo一4.0 - 1兩個南6
我們也可以填補缺失值使用fill_value參數。
> > >表=df。pivot_table(值=' D ',指數=(“一個”,“B”),…列=“C”,aggfunc=“和”,fill_value=0)> > >表。sort_index()C大的小一個B酒吧一個4 5兩個7 6foo 1 4 1兩個0 6
我們也可以計算多種類型的聚合為任何給定的值列。
> > >表=df。pivot_table(值=(' D '),指數=(“C”),…列=“一個”,aggfunc={' D ':“的意思是”})> > >表。sort_index()D一個酒吧fooC大5.5 - 2.000000小5.5 - 2.333333
下一個示例聚合多個值。
> > >表=df。pivot_table(指數=(“C”),列=“一個”,值=(' D ',“E”),…aggfunc={' D ':“的意思是”,“E”:“和”})> > >表。sort_index()D E酒吧foo酒吧fooC大5.5 - 2.000000 15 9小5.5 - 2.333333 17 13