繁体   English   中英

遍历Pandas数据框行

[英]Iterate over Pandas dataframe rows

我有一个来自(用数据透视表制作)的MultiIndex数据框,看起来像

          col1 col2 col3
item 1 a  0    0    0
       b  1    1    1
item 2 a  0    0    0
       c  1    2    3

前两列是索引。 我想遍历每一行并获取子表,即“项目1”

  col1 col2 col3
a  0    0    0
b  1    1    1

并可能再次分为

  col1 col2 col3
a  0    0    0

这些值最初在GUI中转换为卡

我已经尝试过各种更改索引,迭代,xs的组合,但我似乎总是只能使用(index1,index2)来获取东西,例如(item 1,a,0,0,0)将它们分开(例如,项目1,{a:[0,0,0],b:[0,0,0]})

采用

In [4482]: for i, g in df.groupby(level=0):
      ...:     print g.loc[i]
      ...:
   col1  col2  col3
a     0     0     0
b     1     1     1
   col1  col2  col3
a     0     0     0
c     1     2     3

再上一层

In [4488]: for i, g in df.groupby(level=0):
      ...:     print '--------Parent--------', i
      ...:     print g.loc[i]
      ...:     for ii, gg in g.loc[i].groupby(level=0):
      ...:         print '----------child--------', ii
      ...:         print gg
      ...:
--------Parent-------- item 1
   col1  col2  col3
a     0     0     0
b     1     1     1
----------child-------- a
   col1  col2  col3
a     0     0     0
----------child-------- b
   col1  col2  col3
b     1     1     1
--------Parent-------- item 2
   col1  col2  col3
a     0     0     0
c     1     2     3
----------child-------- a
   col1  col2  col3
a     0     0     0
----------child-------- c
   col1  col2  col3
c     1     2     3

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM