Строки группы данных в pandas на основе определенного столбца
У меня есть таблица, которая выглядит так:
P_id S_id Time
1 20 A 15
2 30 B 50
3 50 A 99
4 70 A 60
Я хочу сгруппировать таблицу на основе столбца "Sid" и отсортировать по столбцу "Time", чтобы она выглядела следующим образом:
P_id S_id
1 20,70,50 A
2 30 B
Каков наилучший способ сделать это?
1 ответ
Вы можете попробовать это. 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