pyspark.pandas.DataFrame.stack¶
-
DataFrame。
堆棧
( )→聯盟(DataFrame,係列] ¶ -
堆棧(s)規定的級別從列索引。
返回一個重塑DataFrame或係列有一個多層次索引與一個或多個新的當前DataFrame最隱秘的水平相比。新最隱秘的水平是由旋轉的列當前dataframe:
如果列有一個水平,輸出是一個係列;
如果列有多個水平,新指數水平(s)(是)從規定的級別(s)和輸出DataFrame。
新指數水平排序。
- 返回
-
- DataFrame或係列
-
堆疊dataframe或係列。
另請參閱
-
DataFrame.unstack
-
Unstack規定水平從指數(s)軸上柱軸。
-
DataFrame.pivot
-
重塑dataframe從長格式寬格式。
-
DataFrame.pivot_table
-
創建一個spreadsheet-style DataFrame數據透視表。
筆記
函數是被類比與集合的書被重組的並排在一個水平位置(dataframe列)相互垂直疊放在上麵(dataframe的索引)。
例子
單級列
> > >df_single_level_cols=ps。DataFrame([[0,1),(2,3]],…指數=(“貓”,“狗”),…列=(“重量”,“高度”])
疊加一個dataframe單層柱軸返回一個係列:
> > >df_single_level_cols體重身高貓0 1狗2 3> > >df_single_level_cols。堆棧()。sort_index()貓身高1重量的0狗的身高3重量2dtype: int64
多層次列:簡單情況
> > >multicol1=pd。MultiIndex。from_tuples(((“重量”,“公斤”),…(“重量”,“英鎊”)))> > >df_multi_level_cols1=ps。DataFrame([[1,2),(2,4]],…指數=(“貓”,“狗”),…列=multicol1)
疊加一個dataframe多級柱軸:
> > >df_multi_level_cols1重量公斤的體重貓1 2狗2 4> > >df_multi_level_cols1。堆棧()。sort_index()重量貓1公斤2磅狗2公斤4磅
缺失值
> > >multicol2=pd。MultiIndex。from_tuples(((“重量”,“公斤”),…(“高度”,“米”)))> > >df_multi_level_cols2=ps。DataFrame([[1.0,2.0),(3.0,4.0]],…指數=(“貓”,“狗”),…列=multicol2)
通常有缺失值疊加與多層次dataframe列時,隨著堆dataframe通常比原dataframe值。缺失值充滿nan:
> > >df_multi_level_cols2體重身高公斤米貓1.0 - 2.0狗3.0 - 4.0> > >df_multi_level_cols2。堆棧()。sort_index()身高體重貓1.0公斤南2.0米南狗3.0公斤南4.0米南