如何将层次结构或多索引应用于熊猫列

riddley_w

我已经看到了许多有关如何按层次排列数据帧行索引的示例,但是我试图对列进行相同操作,并且不了解语法:

鉴于:

df = pd.DataFrame(np.random.randn(10,10),
                  columns=['consumption', 'voltage', 'consumption', 
                           'voltage', 'temperature', 'humidity', 'consumption', 
                           'voltage','temperature','humidity'], 
                  index= pd.date_range('20000103',periods=10))

>>> df
            consumption   voltage  consumption   voltage  temperature  \
2000-01-03    -1.327735 -1.440285     0.317122 -1.120105     1.736651   
2000-01-04     0.132531  0.646972     2.296734  0.332154    -0.541792   
2000-01-05     0.127623  0.592778     0.162096  0.107398    -0.628785   
2000-01-06    -1.441151  0.215424     0.021068  0.683085    -0.783994   
2000-01-07    -0.157848  1.566780     0.599017 -0.628216     0.500251   
2000-01-08    -0.498926  0.338771     0.400159  1.571975     0.255635   
2000-01-09     0.516618 -1.936360     0.199388 -0.110415     2.690859   
2000-01-10    -0.779012 -1.310022    -1.207503  0.095679    -0.134244   
2000-01-11     0.644262  0.068196     1.041745 -0.444408    -0.751595   
2000-01-12    -0.608046  0.506588    -1.003893  0.473716     0.211991   

            humidity  consumption   voltage  temperature  humidity  
2000-01-03  0.039869     1.875807  0.129065     0.132419  0.572678  
2000-01-04  1.997363     0.543881 -1.235036     1.155389  1.282912  
2000-01-05 -0.458992     0.371589  0.698094     0.695067 -1.095875  
2000-01-06  2.512991     0.795234  1.220327    -0.688820  0.875705  
2000-01-07  0.263855    -1.253786 -0.308674     1.000057  1.474928  
2000-01-08 -0.614560    -0.398284  1.307488    -0.002438  1.572630  
2000-01-09  0.363889     2.571522  1.048124     2.574866 -0.417247  
2000-01-10 -0.125377     1.004011  1.312716    -2.036689  0.557569  
2000-01-11 -0.818585    -0.595743  1.106869    -2.226666 -0.679508  
2000-01-12  0.705707    -0.959365  0.689911     0.498411 -0.353557 

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

BUILDING        1
DEVICETYPE      METER                  METER                  WEATHER
DEVICEID        A                      B                      A
FIELD           consumption   voltage  consumption   voltage  temperature  \
    2000-01-03    -1.327735 -1.440285     0.317122 -1.120105     1.736651   
    2000-01-04     0.132531  0.646972     2.296734  0.332154    -0.541792   
    2000-01-05     0.127623  0.592778     0.162096  0.107398    -0.628785   
    2000-01-06    -1.441151  0.215424     0.021068  0.683085    -0.783994   
    2000-01-07    -0.157848  1.566780     0.599017 -0.628216     0.500251   
    2000-01-08    -0.498926  0.338771     0.400159  1.571975     0.255635   
    2000-01-09     0.516618 -1.936360     0.199388 -0.110415     2.690859   
    2000-01-10    -0.779012 -1.310022    -1.207503  0.095679    -0.134244   
    2000-01-11     0.644262  0.068196     1.041745 -0.444408    -0.751595   
    2000-01-12    -0.608046  0.506588    -1.003893  0.473716     0.211991   

BUILDING                  2
DEVICETYPE                METER                  WEATHER
DEVICEID                  A                      A
                humidity  consumption   voltage  temperature  humidity  
    2000-01-03  0.039869     1.875807  0.129065     0.132419  0.572678  
    2000-01-04  1.997363     0.543881 -1.235036     1.155389  1.282912  
    2000-01-05 -0.458992     0.371589  0.698094     0.695067 -1.095875  
    2000-01-06  2.512991     0.795234  1.220327    -0.688820  0.875705  
    2000-01-07  0.263855    -1.253786 -0.308674     1.000057  1.474928  
    2000-01-08 -0.614560    -0.398284  1.307488    -0.002438  1.572630  
    2000-01-09  0.363889     2.571522  1.048124     2.574866 -0.417247  
    2000-01-10 -0.125377     1.004011  1.312716    -2.036689  0.557569  
    2000-01-11 -0.818585    -0.595743  1.106869    -2.226666 -0.679508  
    2000-01-12  0.705707    -0.959365  0.689911     0.498411 -0.353557 
忘了它

您可以使用orclass方法进行定义MultiIndices这是一个使用示例from_arraysfrom_tuplesfrom_productfrom_arrays

arrays = [[1, 2]*3, ['A', 'B', 'C']*2]
columns = pd.MultiIndex.from_arrays(arrays, names=['foo', 'bar'])

df = pd.DataFrame(np.random.randn(2,6),
                  columns=columns,
                  index= pd.date_range('20000103',periods=2))

产量

In [81]: df
Out[81]: 
foo                1         2         1         2         1         2
bar                A         B         C         A         B         C
2000-01-03  1.277234 -0.899547  0.040337 -0.878752 -0.524336  0.922440
2000-01-04 -1.706797  0.450379  1.510868 -2.539827 -1.909996 -0.003851

为索引定义MultiIndex的方式与为列定义方式完全相同。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

熊猫:如何将函数应用于不同的列

来自分类Dev

熊猫数据框,如何将单个列分组并将总和应用于多列并添加新的总和列?

来自分类Dev

将熊猫分组聚合应用于多索引

来自分类Dev

如何将函数应用于多列以在 Pandas 中创建多列?

来自分类Dev

熊猫将功能应用于列和索引组

来自分类Dev

熊猫将功能应用于多列多行

来自分类Dev

将公式应用于多索引列Python

来自分类Dev

在熊猫中,如何将函数应用于返回两列的每一列

来自分类Dev

如何将索引应用于成对的行

来自分类Dev

如何将函数应用于数组的索引?

来自分类Dev

如何将Lambda函数正确应用于熊猫数据框列

来自分类Dev

如何将Window函数应用于DataFrame中的多列

来自分类Dev

如何更新/将验证应用于熊猫列

来自分类Dev

将rolling()应用于groupby熊猫对象时,多索引重复

来自分类Dev

熊猫将功能应用于列

来自分类Dev

如何将cumcount应用于两列?

来自分类Dev

如何将CountVectorizer应用于数据集的列?

来自分类Dev

如何将命令应用于第n列?

来自分类Dev

如何将 NTILE 函数应用于 SQL 列

来自分类Dev

熊猫数据框:如何将describe()应用于每个组并添加到新列?

来自分类Dev

应用于(以熊猫为单位)多列

来自分类Dev

如何将转换应用于熊猫数据框列表?

来自分类Dev

熊猫如何将多个功能应用于数据框

来自分类Dev

如何将功能应用于多个熊猫数据框

来自分类Dev

熊猫(Python):如何将值应用于相似的行?

来自分类Dev

如何将函数应用于熊猫中每一行的对象属性

来自分类Dev

如何将转换方法应用于熊猫中的两个变量?

来自分类Dev

熊猫如何将多个功能应用于数据框

来自分类Dev

我如何将类结构应用于csv,然后对其进行排序?

Related 相关文章

  1. 1

    熊猫:如何将函数应用于不同的列

  2. 2

    熊猫数据框,如何将单个列分组并将总和应用于多列并添加新的总和列?

  3. 3

    将熊猫分组聚合应用于多索引

  4. 4

    如何将函数应用于多列以在 Pandas 中创建多列?

  5. 5

    熊猫将功能应用于列和索引组

  6. 6

    熊猫将功能应用于多列多行

  7. 7

    将公式应用于多索引列Python

  8. 8

    在熊猫中,如何将函数应用于返回两列的每一列

  9. 9

    如何将索引应用于成对的行

  10. 10

    如何将函数应用于数组的索引?

  11. 11

    如何将Lambda函数正确应用于熊猫数据框列

  12. 12

    如何将Window函数应用于DataFrame中的多列

  13. 13

    如何更新/将验证应用于熊猫列

  14. 14

    将rolling()应用于groupby熊猫对象时,多索引重复

  15. 15

    熊猫将功能应用于列

  16. 16

    如何将cumcount应用于两列?

  17. 17

    如何将CountVectorizer应用于数据集的列?

  18. 18

    如何将命令应用于第n列?

  19. 19

    如何将 NTILE 函数应用于 SQL 列

  20. 20

    熊猫数据框:如何将describe()应用于每个组并添加到新列?

  21. 21

    应用于(以熊猫为单位)多列

  22. 22

    如何将转换应用于熊猫数据框列表?

  23. 23

    熊猫如何将多个功能应用于数据框

  24. 24

    如何将功能应用于多个熊猫数据框

  25. 25

    熊猫(Python):如何将值应用于相似的行?

  26. 26

    如何将函数应用于熊猫中每一行的对象属性

  27. 27

    如何将转换方法应用于熊猫中的两个变量?

  28. 28

    熊猫如何将多个功能应用于数据框

  29. 29

    我如何将类结构应用于csv,然后对其进行排序?

热门标签

归档