с учетом кадра данных с одним описательным столбцом и X числовыми столбцами, для каждой строки я хотел бы идентифицировать верхние N столбцов с более высокими значениями и сохранить их как строки на новый dataframe.Поиск верхних N столбцов для каждой строки в фрейме данных
Например, рассмотрим следующий кадр данных:
df = pd.DataFrame()
df['index'] = ['A', 'B', 'C', 'D','E', 'F']
df['option1'] = [1,5,3,7,9,3]
df['option2'] = [8,4,5,6,9,2]
df['option3'] = [9,9,1,3,9,5]
df['option4'] = [3,8,3,5,7,0]
df['option5'] = [2,3,4,9,4,2]
Я хотел бы выход (позволяет сказать, N 3, поэтому я хочу, топ-3):
A,option3
A,option2
A,option4
B,option3
B,option4
B,option1
C,option2
C,option5
C,option4 (or option1 - ties arent really a problem)
D,option5
D,option1
D,option2
and so on....
любая идея, как это легко достичь? Благодаря
какой формат сделать вас хотеть? –
Поскольку OP никогда не отвечал, давайте сделаем разумное предположение, что они хотят получить данные, а не список списков или что-то еще. – smci
Переименовать, поскольку OP, по-видимому, хочет * «Найти верхние N столбцов» * вместо * «Выбор верхних N столбцов ...» *, который будет работать с pandas с выходом df. – smci