热线电话:13121318867

登录
2020-04-28 阅读量: 2246
为dataframe添加双重索引,题目详情见正文

已有data表如下:

姓名 工龄

0 Allen 2

1 Lucy 4

2 Tom 2

3 Alice 3

4 Tim 1

要求为data表添加双重行索引,目标效果如下:

参考答案方法一:

data =pd.DataFrame({"姓名":["Allen","Lucy","Tom","Alice","Tim"],"工龄":np.random.randint(1,5,5)}) #建立没有双重索引的表
list1 = [["第一分公司","第一分公司","第一分公司","第二分公司","第二分公司"]
,["销售部","销售部","市场部","市场部","行政部"]]
tuples = list(zip(*list1))
index = pd.MultiIndex.from_tuples(tuples, names=['公司', '部门'])
data.index = index
data

代码结果:

参考答案方法二:

data =pd.DataFrame({"姓名":["Allen","Lucy","Tom","Alice","Tim"],"工龄":np.random.randint(1,5,5)})#建立没有双重索引的表
list1 = [["第一分公司","第一分公司","第一分公司","第二分公司","第二分公司"]
,["销售部","销售部","市场部","市场部","行政部"]]
index = pd.MultiIndex.from_arrays(list1,names=['公司', '部门'])
data.index = index
data

代码结果:

4.7435
4
关注作者
收藏
评论(1)

发表评论
yuechuchen
2020-04-28
解题思路:为dataframe添加双重索引,第一步:先通过pd.MultiIndex创建索引对象,可以通过元组创建索引也可以通过列表或者数组创建索引,所以参考答案分别用了这两种方法创建好双重索引;第二步,将建好的索引添加给dataframe,直接通过为dataframe.index赋值的方式将创建好的双重索引添加给目标dataframe即可。
0.0000 0 0 回复
推荐帖子
条评论