2016-08-28 3 views
0
date shown clicked converted avg_cost_per_click total_revenue ad 
0 2015-10-01 65877 2339 43 0.90 641.62 ad_group_1 
1 2015-10-02 65100 2498 38 0.94 756.37 ad_group_2 
2 2015-10-03 70658 2313 49 0.86 970.90 ad_group_3 
3 2015-10-04 69809 2833 51 1.01 907.39 ad_group_4 
4 2015-10-05 68186 2696 41 1.00 879.45 ad_group_5 

Это моя dataframe dfпанды GroupBy сортировать по суммарной статистики

я группа по «объявления», а затем я хочу, чтобы отсортировать вывод, когда я получить среднее, максимальное ЭСТ ..

df_ad = df.groupby('ad') 

Как мне сортировать ниже?

df_ad['shown'].mean().sort(ascending=True) 
+0

Много способов сортировки. Что вы хотите отсортировать и как это должно выглядеть? – piRSquared

ответ

1

Вам необходимо агрегировать среднее по каждому сгруппированному ключу и использовать sort_values для сортировки этих выходных значений.

df_grouped = df.groupby(['ad'])['shown'].agg({'mean': np.mean, 'max': np.max}) 
df_grouped.sort_values(['mean', 'max'], ascending=[True, False], inplace=True) 
Смежные вопросы