Pandas: как найти максимальное значение в нескольких столбцах
Вы можете использовать следующие методы, чтобы найти максимальное значение для нескольких столбцов в DataFrame pandas:
Способ 1. Найдите максимальное значение по нескольким столбцам.
df[[' col1 ', ' col2 ', ' col3 ']]. max (axis= 1 )
Способ 2. Добавьте новый столбец, содержащий максимальное значение в нескольких столбцах.
df[' new_col '] = df[[' col1 ', ' col2 ', ' col3 ']]. max (axis= 1 )
В следующих примерах показано, как использовать каждый из этих методов на практике со следующим DataFrame pandas:
import pandas as pd
#createDataFrame
df = pd. DataFrame ({' player ': ['A', 'B', 'C', 'D', 'E', 'F', 'G'],
' points ': [28, 17, 19, 14, 23, 26, 5],
' rebounds ': [5, 6, 4, 7, 14, 12, 9],
' assists ': [10, 13, 7, 8, 4, 5, 8]})
#view DataFrame
print (df)
player points rebound assists
0 to 28 5 10
1 B 17 6 13
2 C 19 4 7
3 D 14 7 8
4 E 23 14 4
5 F 26 12 5
6 G 5 9 8
Пример 1. Найдите максимальное значение по нескольким столбцам
Следующий код показывает, как найти максимальное значение в каждой строке столбцов очков и подборов:
#find max value across points and rebounds columns
df[[' points ', ' rebounds ']]. max (axis= 1 )
0 28
1 17
2 19
3 14
4 23
5 26
6 9
dtype: int64
Вот как интерпретировать результат:
- Максимальное значение в столбцах очков и подборов для первой строки составило 28 .
- Максимальное значение в столбцах очков и подборов для второй строки составило 17 .
- Максимальное значение в столбцах очков и подборов для третьей строки составило 19 .
И так далее.
Пример 2. Добавьте новый столбец, содержащий максимальное значение в нескольких столбцах.
Следующий код показывает, как добавить в DataFrame новый столбец, содержащий максимальное значение в каждой строке столбцов точек и отскоков:
#add new column that contains max value across points and rebounds columns
df[' max_points_rebs '] = df[[' points ', ' rebounds ']]. max (axis= 1 )
#view updated DataFrame
print (df)
player points rebounds assists max_points_rebs
0 A 28 5 10 28
1 B 17 6 13 17
2 C 19 4 7 19
3 D 14 7 8 14
4 E 23 14 4 23
5 F 26 12 5 26
6 G 5 9 8 9
Новый столбец с названием max_points_rebs теперь содержит максимальное значение в столбцах точек и отклонений для каждой строки в DataFrame.
Дополнительные ресурсы
В следующих руководствах объясняется, как выполнять другие распространенные задачи в pandas:
Pandas: как переместить столбец перед DataFrame
Pandas: как проверить, содержит ли столбец строку
Pandas: как добавить пустой столбец в DataFrame