创建多层数据框架 - Rows&列

时间:2017-08-06 07:38:22

标签: python pandas dataframe multi-index

是否可以使用多层列和标题创建数据框?像这样:

    C    bar    bar
    D    left   right
A   B           
foo up    1     2

foo down  3     4

其中A& B是分组foo&的列名。上/下,C& D是组合栏和行的名称。左/右。

我可以使用df.set_index(['A', 'B'])创建列多索引没问题,但是在行之间进行['C', 'D']排序很难实现。

背景是调查回复,其中A =国家,B =地区; C =问题回答,D =偏好。 C中有许多组,因此有必要在每行中使用一组人口统计分组。

每个评论者请求添加csv数据样本:

,,,,问题,12,12,12,12,12,13,13,13,13 ,,,,答案,道达尔,秘鲁,秘鲁,厄瓜多尔,厄瓜多尔,秘鲁,秘鲁,厄瓜多尔,厄瓜多尔 ,,,,偏好,道达尔,1,2,1,2,1,2,1,2 国家,地区,经济,人口,,,,,,,,,, 巴西,拉丁美洲,非经合组织国家,男性,249,7.20%,10.80%,12.00%,10.80%,15.70%,12.90%,12.00%,15.70% 巴西,拉丁美洲,非经合组织国家,女性,251,10.80%,10.00%,14.70%,15.50%,11.20%,13.10%,14.70%,11.20% 巴西,拉丁美洲,非经合组织,18-24岁,146,12.30%,10.30%,15.10%,15.10%,17.80%,16.40%,15.10%,17.80% 巴西,拉丁美洲,非经合组织,25-44,,192。80。30%,13.00%,10.90%,13.50%,13.50%,13.50%,10.90%,13.50% 巴西,拉丁美洲,非经合组织,45 + ,, 162,6.80%,7.40%,14.80%,11.10%,9.30%,9.30%,14.80%,9.30% 阿根廷,拉丁美洲,非经合组织国家,男性,271,7.70%,6.30%,8.50%,15.10%,12.50%,14.00%,8.50%,12.50% 阿根廷,拉丁美洲,非经合组织国家,女性,229,6.60%,8.30%,8.70%,15.30%,15.70%,13.10%,8.70%,15.70% 阿根廷,拉丁美洲,非经合组织,18-24岁,140,8.60%,10.70%,7.90%,22.10%,17.90%,10.70%,7.90%,17.90% 阿根廷,拉丁美洲,非经合组织,25-44,180,9.40%,6.10%,7.20%,16.70%,16.70%,18.30%,7.20%,16.70% 阿根廷,拉丁美洲,非经合组织,45 + ,, 180,3.90%,5.60%,10.60%,8.30%,8.30%,11.10%,10.60%,8.30%

1 个答案:

答案 0 :(得分:0)

试试这个:

row