Идея состоит в том, чтобы отсортировать строки на основе значений, чтобы строка с максимальными 1 с получила максимальный результат, который я буду использовать позже для sort_values
с ascending=False
... Это также называется взвешенной суммой ...
Фрейм данных выглядит следующим образом:
ID SINNOUVEAU PERTETOTAL CHANGGARAN SOCLOCATIO SINISAMEDI NOMASCONDU INIREPET
0 1 1 1 0 0 0 1 0
1 1 0 1 0 0 0 1 0
2 1 1 0 1 0 0 1 0
0 2 1 1 1 0 0 1 0
1 2 0 1 0 0 0 1 0
2 2 1 0 1 0 0 1 0
Все веса равны 1, за исключением CHANGGARAN, который будет установлен на 2.
Это пример первой строки для подсчета очков:
1x1 + 1x1 + 0x2 + 0x1 + 0x1 + 1x1 + 0x1=3
В конце это ожидаемые результаты перед сортировкой:
ID SINNOUVEAU PERTETOTAL CHANGGARAN SOCLOCATIO SINISAMEDI NOMASCONDU INIREPET SCORE
0 1 1 1 0 0 0 1 0 3
1 1 0 1 0 0 0 1 0 2
2 1 1 0 1 0 0 1 0 4
0 2 1 1 1 0 0 1 0 5
1 2 0 1 0 0 0 1 0 2
2 2 1 0 1 0 0 1 0 4
Спасибо!