dataframe groupby_pandas使用groupby分组后传入列的列表得到的还是原来所有列但加个函数后就只有列表里的列...

import pandas as pd
import numpy as np
df = pd.DataFrame({'key1':list('aabba'),'key2':['one','two','one','two','one'],'data1':np.random.randn(5),'data2':np.random.rand(5)})

先上代码,生成的df是:

3f2a6c0157a22056e587114ac8e6d63e.png
df.groupby('key1')[['data1']]
### 得到一个groupby的对象,用list取出:
list(df.groupby('key1')[['data1']])

f9c8024fc33db0dcb7fe43cb8efa90fb.png

可以看到,我要取的是date1列,但结果中给了data1和data2,同时,key1和key2也以列的格式呈现了。

df.groupby(['key1','key2'])[['data1']].mean()

可以看到,加了mean()函数后,取出的数据就只有data1这一列,key1是索引。

1bdb2615bd384371accf60732b79e701.png

groupby取数据,传入列的列表不传函数,得到的结果中为什么不是预想中的传入的列,而是原DataFrame的全部列,这是什么原因呢?

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值