全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 python论坛
1544 1
2021-08-30

In[46]:
#分段处理数据,获取各段停留状态的时间差
for name,df in g:
    x = np.array(df['时间差'].values)
    #y = np.array(df['tag1'].values)
    if x.shape[0] == 0:
        continue
    stayTime = df['时间差'].groupby([df['tag1']]).sum()
    print(stayTime)
Out[46]:

tag1

0    24315

Name: 时间差, dtype: int64

tag1

0    150

1     50

Name: 时间差, dtype: int64

tag1

1    40

Name: 时间差, dtype: int64

tag1

0    39

1    90

Name: 时间差, dtype: int64

In[47]:

stayTime.describe

Out[47]:

<bound method NDFrame.describe of tag1

0    25516

1       31

Name: 时间差, dtype: int64>

这是利用python中groupby函数写的部分代码,请问怎样将变量‘stayTime’中‘tag1’= 0,所对应的时间差提取出来,并以列表(list)的形式存放?




二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2021-8-31 23:00:10
groupby(...).sum()后,应该是根据tag进行分类求和了,
返回的是一个pd.Series
若要以列表存放,直接.tolist()   即可,或者list ( pd.Series )是同样的效果。

不过,如果按tag1 groupby后,再sum,分了几类,就应该只有几行值,
根据上面代码的循环,应该在循环外定义一个空列表listTag1=[]
在stayTime赋值语句后,使用listTag1.append(stayTime[0])
试试看
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群