Сортировать значения по столбцам, а не по строкам - PullRequest
0 голосов
/ 07 января 2020

Надеюсь, вы поможете мне решить эту глупую проблему.

Мне нужно отсортировать столбцы по наибольшим значениям. Мой фрейм данных состоит из 31 столбца, причем первые 7 выглядят так.

enter image description here

Мне нужно выглядеть следующим образом

enter image description here

У меня есть попробовал с этим кодом

sorted_df = df_1.sort_values(df_1.last_valid_index(), axis=1)

Но это не сработает. По сути, из всех столбцов мне нужно найти 6 столбцов с самыми высокими значениями. Можете ли вы мне помочь ?

Спасибо!

1 Ответ

2 голосов
/ 07 января 2020

Вы можете транспонировать, сортировать и транспонировать обратно

df = pd.DataFrame( { "name": ["messi"], "height": [170], "weight":[72], "attack_cross":[88] })

df.T[df.T.index != 'name'].sort_values(0,ascending = False).T

дает

        height  attack_cross    weight
0       170     88              72

добавить обратно имя игрока, и вы хороши.

Если вы хотите только 6 лучших можно добавить в head(6)

df.T[df.T.index != 'name'].sort_values(0,ascending = False).head(6).T
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...