Вы можете использовать функцию .idxmax, а затем добавить столбец:
import pandas as pd
candidates = pd.DataFrame({'Candidate_A': [8, 18, 9], 'Candidate_B': [9, 9, 9], 'Candidate_C': [12, 12, 7]}, index=[1, 2, 3])
candidates['Results'] = candidates.idxmax(axis=1)
print(candidates)
Вот ваш вывод:
Candidate_A Candidate_B Candidate_C Results
1 8 9 12 Candidate_C
2 18 9 12 Candidate_A
3 9 9 7 Candidate_A
Как вы знаете, вы можете добавить дополнительный столбец с помощьюиспользуя скобки ['Results'], и мы просто установим его равным max в каждой строке с помощью функции idxmax.Не забудьте установить ось на 1, если мы получаем максимум на основе каждой строки данных вместо каждого столбца данных.