Переписать код используя asyncio/polars
Цена договорная
Есть 2 файла
1 - russia.geo.json - geojson датафрейм, в котором указаны полигоны/мультиполигоны регионов России, скачанных из openstreetmap
2 - addresses_adverts.csv - файл с координатами и id, количество строк - около 25 млн
Итого, нужно получить обновленный addresses_adverts.csv файл, в котором появится новая колонка "region_id", который является номером региона (на основе первого файла)
Суть проблемы заключается в следующем:
- слишком долго обрабатывается цикл
- ad['region_id'] = list(executor.map(lambda x, y: get_region(x, y), ad['geo_lon'], ad['geo_lat'])) - Если сделать подобным образом, то также медленно
Файлы
https://disk.yandex.ru/d/jDvnPeVZg2owTQ
https://disk.yandex.ru/d/pqQ4ihqnXP6kvw
Текущий не асинхронный код, для теста можно поменять строку так
ad = pd.read_csv('addresses_adverts.csv', sep="\t", nrows=1000)
https://pastebin.com/Uwz4D1UX
пишите сразу цену в лс
1 - russia.geo.json - geojson датафрейм, в котором указаны полигоны/мультиполигоны регионов России, скачанных из openstreetmap
2 - addresses_adverts.csv - файл с координатами и id, количество строк - около 25 млн
Итого, нужно получить обновленный addresses_adverts.csv файл, в котором появится новая колонка "region_id", который является номером региона (на основе первого файла)
Суть проблемы заключается в следующем:
- слишком долго обрабатывается цикл
- ad['region_id'] = list(executor.map(lambda x, y: get_region(x, y), ad['geo_lon'], ad['geo_lat'])) - Если сделать подобным образом, то также медленно
Файлы
https://disk.yandex.ru/d/jDvnPeVZg2owTQ
https://disk.yandex.ru/d/pqQ4ihqnXP6kvw
Текущий не асинхронный код, для теста можно поменять строку так
ad = pd.read_csv('addresses_adverts.csv', sep="\t", nrows=1000)
https://pastebin.com/Uwz4D1UX
пишите сразу цену в лс
Отзывы
В заказе есть исполнитель
При переводе заказа из архивного в актуальный, текущий исполнитель будет снят с задачи.
Выберите тип сделки
С безопасной сделкой вы всегда сможете вернуть средства, если что-то пойдет не так. С простой сделкой вы самостоятельно договариваетесь с исполнителем об оплате и берете на себя решение конфликтов.