堆叠一个DataFrame意味着将最内层的列索引移动为最内层的行索引。其逆运算叫做反叠加。
堆叠(stack)是什么?-如果我们有多个索引列,通过将最内层的列级别移动到最内层的行级别来减少数据集列。所以堆栈是将cols的索引变到rows(最里面的)。如图2所示,经过pt.stack()操作后marital_status从列索引变为行索引
反叠加(unstack)是什么?-如果我们有多索引行,我们通过移动最内层的行级别到最内层的列级别来减少数据集行。所以unstack是将rows的索引变到cols的索引(最里面的)。如图3所示,经过pt.stack().unstack()操作后,marital_status又从行索引变回列索引