对pandas列应用层次结构或多重索引

2024-06-25 23:08:20 发布

您现在位置:Python中文网/ 问答频道 /正文

我看过很多关于如何按层次排列数据帧行索引的示例,但我试图对列执行相同的操作,但我不理解语法:

我从csv文件中读取如下内容

df=pandas.read_csv("data.csv")

以及数据.csv包含以下内容:

^{pr2}$

所以在[1]:df 给予

   rno  mark1  lab1  mark2  lab2
0    1     78    45     34    54
1    2     23    54     87    46

我想做的是在列中添加一个层次索引甚至类似于标记的东西,这样它们看起来像这样:

        Subject1     Subject2   
   rno  mark1  lab1  mark2  lab2
0    1     78    45     34    54
1    2     23    54     87    46

Tags: 文件csv数据示例内容pandasdfread
1条回答
网友
1楼 · 发布于 2024-06-25 23:08:20

下面是一个快速解决方案:

data = pd.read_csv('data.csv')
>>> arrays = [[ '', 'Subject1', 'Subject1', 'Subject2', 'Subject2'], data.columns]
>>> df = pd.DataFrame(data.values, columns=arrays)
>>> print df
        Subject1        Subject2      
   rno     mark1  lab1     mark2  lab2
0    1        78    45        34    54
1    2        23    54        87    46

[2 rows x 5 columns]

只是另一种方法:

^{pr2}$

相关问题 更多 >