Как векторизовать операцию, которая фильтрует кадр данных на основе значений в каждой строке [закрыто]Python

Программы на Python
Anonymous
Как векторизовать операцию, которая фильтрует кадр данных на основе значений в каждой строке [закрыто]

Сообщение Anonymous »

В моем случае используется фрейм данных, где каждая строка представляет собой спортивное событие. Мне нужно выполнить операцию, в ходе которой к каждой строке (фиксатору) я применяю серию фильтров, в конечном итоге получая новый фрейм данных, содержащий прошлые данные с участием игрока и оппонентов, с которыми ОБА игрока играли в какой-то момент своей карьеры.Я пытаюсь найти наименее глупый способ сделать это. На данный момент я написал функцию, которую можно итеративно применять к каждой строке по одной. Функция возвращает один кадр данных в каждой строке, содержащий прошлые матчи с общими противниками игроков из этой строки. Затем я собираю фреймы данных в список:

Код: Выделить всё

[common_opponent_finder() for row in df]
Этот подход занимает около 30 секунд для нескольких тысяч приборов. Мой инстинкт подсказывает, что может быть способ ускорить это... но я не могу понять, как переформулировать операцию в векторизованном виде.
Любая помощь будет полезна. оценил. Извините, если что-то неясно в том, что я пытаюсь сделать.

Подробнее здесь: https://stackoverflow.com/questions/788 ... s-in-every

Вернуться в «Python»