pandas用列表进行分组

people = pd.DataFrame(np.random.randn(5, 5),
                      columns=['a', 'b', 'c', 'd', 'e'],
                      index=['Joe', 'Steve', 'Wes', 'Jim', 'Travis'])
people.iloc[2:3, [1, 2]] = np.nan # Add a few NA values
people
               a 	        b 	       c 	       d 	       e
Joe 	1.007189 	-1.296221 	0.274992 	0.228913 	1.352917
Steve 	0.886429 	-2.001637 	-0.371843 	1.669025 	-0.438570
Wes 	-0.539741 	NaN 	         NaN 	-1.021228 	-0.577087
Jim 	0.124121 	0.302614 	0.523772 	0.000940 	1.343810
Travis 	-0.713544 	-0.831154 	-2.370232 	-1.860761 	-0.860757
key_list = ['one', 'one', 'one', 'two', 'two']
what = people.groupby(key_list)
for i in what:
    print(i)
('one',               a         b         c         d         e
         Joe    1.007189 -1.296221  0.274992  0.228913  1.352917
         Steve  0.886429 -2.001637 -0.371843  1.669025 -0.438570
         Wes   -0.539741       NaN       NaN -1.021228 -0.577087)
('two',                a         b         c         d         e
         Jim     0.124121  0.302614  0.523772  0.000940  1.343810
         Travis -0.713544 -0.831154 -2.370232 -1.860761 -0.860757)

groupby默认对行方向进行分组,所以把列表每个元素对应一行,进行分组。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值