python - 熊猫数据框根据特定列对行进行分组
问题描述
我有一个看起来像这样的表:
P_id S_id Time
1 20 A 15
2 30 B 50
3 50 A 99
4 70 A 60
我想根据“Sid”列对表格进行分组,并按“时间”列排序,所以它看起来像这样:
P_id S_id
1 20,70,50 A
2 30 B
做这个的最好方式是什么?
解决方案
你可以试试这个。df 这是您的数据框的名称
import pandas as pd
df2 = pd.DataFrame({'S_id': ['A', 'B']})
df2.loc[:,'P_id'] = ''
for letter in df2.S_id.unique():
indx = df2.loc[df2['S_id']==letter].index.values
df1 = df.sort_values(by = ['S_id' ,'Time'])
array_values = list(df1[df1.S_id ==letter].P_id.values)#.astype(object)
df2.at[indx[0], 'P_id'] = array_values
df2
推荐阅读
- reactjs - 嵌套选项卡导航器在抽屉导航器中不起作用
- xslt - 删除不相同的重复节点(在标签不存在时考虑默认值)
- javascript - 如何在 ReactJs 组件中使用外部 JavaScript 函数?
- javascript - 用户在文本框中插入值后如何显示另一个文本框?
- django-rest-framework - 如何在“lookup_field”中添加多个字段?
- c# - C# 在给定 n 和给定最大数组长度的情况下排列一组字符串
- android - 如何在反应原生android上显示多行通知?
- go - 如何生成随机 Uint32 Go
- android - 如何在适配器中启动活动
- c# - 在DataTable中导出到excel时如何在顶部添加图像?