如何对两列进行分组并保持其余列相同?

How to Groupby two columns and keep the rest of columns the same?

DataFrame 看起来像这样:

Date       Symbol    Open     High    Low    Close   Volume

2016-01-04  AAPL    102.61  105.368  102.00  105.35  67649387.0
2016-01-05  AAPL    105.75  105.850  102.41  102.71  55790992.0
2016-01-06  KO      100.56  102.370  99.87   100.70  68457388.0

我正在努力让它看起来像这样:

                          Open    High     Low       Close    Volume
Symbol     Date
 AAPL      2016-01-04    102.61   105.368  102.00    105.35  67649387.0
           2016-01-05    105.75   105.850  102.41    102.71  55790992.0
           2016-01-06    100.56   102.370  99.87     100.70  68457388.0

 KO        2016-01-04    102.61   105.368  102.00    105.35  67649387.0
           2016-01-05    102.61   105.368  102.00    105.35  67649387.0
           2016-01-06    102.61   105.368  102.00    105.35  67649387.0

我试过了:

  mydata.groupby(['Symbol','Date']).agg()

我也试过 reset_index 并在索引上合并,但也没有成功

如果我理解你的意思..

df.set_index(['Date','Symbol']).unstack(0).stack(dropna=False).groupby(level='Symbol').ffill().bfill()
Out[231]: 
                     Open     High     Low   Close      Volume
Symbol Date                                                   
AAPL   2016-01-04  102.61  105.368  102.00  105.35  67649387.0
       2016-01-05  105.75  105.850  102.41  102.71  55790992.0
       2016-01-06  105.75  105.850  102.41  102.71  55790992.0
KO     2016-01-04  100.56  102.370   99.87  100.70  68457388.0
       2016-01-05  100.56  102.370   99.87  100.70  68457388.0
       2016-01-06  100.56  102.370   99.87  100.70  68457388.0