如何将行索引值用作数据框的列?

How can I use row index values as column for dataframe?

因此,我从 21 名参与者的 16 个 EEG 通道收集了数据,并提取了 Gamma 波段。我当前的数据框如下所示([336 行 x 2 列]):

Channels Gamma
Fp1 0.345908
Fp2 0.121232
F3 0.213212
..... ....

现在我想以这样的方式转置它,使我在一列中具有每个通道的伽玛值。像这样:

Fp1 Fp2 F3 .... Oz
0.067005 0.345908 0.207540 .... 0.013512
0.137292 0.121232 0.121210 .... 0.121111
0.112121 0.213212 0.123443 .... 0.432233

当我只是转置数据帧时,我得到一行,所有通道彼此相邻:

Fp1 Fp1 Fp1 .... Oz Oz Oz
0.067005 0.345908 0.207540 .... 0.013512 0.12123 0.112423

我看了pd.melt,但我想不通。有人可以帮忙吗?

提前致谢!

一种方法是按频道分组,然后将这些组设置为新数据框的列。假设以下数据框:

  Channels     Gamma
0      Fp1  0.345908
1      Fp2  0.121232
2      Fp1  0.455908
3      Fp2  0.213212

然后将此代码应用于数据框:

pd.concat(
        {k: g.reset_index(drop=True) 
            for k, g in df.groupby('Channels')['Gamma']}, axis=1)

并收到以下输出:

        Fp1       Fp2
0  0.345908  0.121232
1  0.455908  0.213212