Size: a a a

Python для анализа данных

2020 December 22

D

Daria in Python для анализа данных
Paul Qwetek
Всем привет! Занимаюсь планированием распределения детей в пункты проведения экзаменов, с Питоном знаком слабо, поэтому подскажите, в какую сторону копать. Дано - 9 пунктов, с разной вместимостью, у каждого - свой код и своя вместимость. При распределении детей участники из конкретной школы, если она является пунктом проведения экзаменов, идут сдавать у себя, у них приоритет, вместимость пункта уменьшается на эту величину. Оставшихся участников надо равномерно распределить по пунктам. Плюс у программы должна быть возможность перераспределения участников вручную. Количество участников из всех школ разное, разумеется, т.е. тут надо перебирать значения. Может есть какое-то готовое решение?
я тоже не назову себя экспертом в Python, поэтому по пути наименьшего сопротивления предложу попробовать эту open source тулзу, которая на питоне построена едва ли не для тех же самых целей, что вы озвучили. Сама её не использовала, но описание вроде бы подходящее 😊   https://www.groupeng.org/files/GroupEng_Paper_WEPAN.pdf
источник

PZ

Pavel Zheltouhov in Python для анализа данных
Arsenii Zed
Не понимаю, зачем в этом чате троллить
А что тут бесплатно работают за бюджетников?
источник

D

Daria in Python для анализа данных
Arsenii Zed
Не понимаю, зачем в этом чате троллить
Это такая игра по ходу, как Poke the penguin. Ну я надеюсь, по крайней мере)))
источник

AZ

Arsenii Zed in Python для анализа данных
Pavel Zheltouhov
А что тут бесплатно работают за бюджетников?
Ну человек вроде и не просил за него решить задачу
источник

PZ

Pavel Zheltouhov in Python для анализа данных
Arsenii Zed
Ну человек вроде и не просил за него решить задачу
Формулировка черезвычайно халявная и наивная
источник

AZ

Arsenii Zed in Python для анализа данных
А то что нормальных программистов нанять не могут - уже совсем другой вопрос и явно не вина топикстартера
источник

IS

Ivan Samorukov in Python для анализа данных
Pavel Zheltouhov
А что тут бесплатно работают за бюджетников?
А есть разница, ответить бюджетнику, частнику, безработному?)
источник

PZ

Pavel Zheltouhov in Python для анализа данных
Ivan Samorukov
А есть разница, ответить бюджетнику, частнику, безработному?)
Есть. Бюджетник идет к Начальнику и они объявляют Тендер
источник

PQ

Paul Qwetek in Python для анализа данных
Pavel Zheltouhov
Формулировка черезвычайно халявная и наивная
Не-не-не! Я не просил решать задачу, я спросил, в какую сторону копать! Дарья уже сбросила инфу, за что ей спасибо, изучаю
источник

IS

Ivan Samorukov in Python для анализа данных
Pavel Zheltouhov
Есть. Бюджетник идет к Начальнику и они объявляют Тендер
Тендер на задачу распределения детей?) Или под эту задачу целесообразно софт заказывать?) Человек просто попросил совета же
источник

M

Mikhail in Python для анализа данных
Paul Qwetek
Всем привет! Занимаюсь планированием распределения детей в пункты проведения экзаменов, с Питоном знаком слабо, поэтому подскажите, в какую сторону копать. Дано - 9 пунктов, с разной вместимостью, у каждого - свой код и своя вместимость. При распределении детей участники из конкретной школы, если она является пунктом проведения экзаменов, идут сдавать у себя, у них приоритет, вместимость пункта уменьшается на эту величину. Оставшихся участников надо равномерно распределить по пунктам. Плюс у программы должна быть возможность перераспределения участников вручную. Количество участников из всех школ разное, разумеется, т.е. тут надо перебирать значения. Может есть какое-то готовое решение?
сначала распределите то что распределяется однозначно (по приоритету), потом используйте linear_sum_assignment из scipy для матчинга тех кто не поместился и свободных слотов
источник

M

Mikhail in Python для анализа данных
потом выгрузите в эксель и руками отредактируйте то что нужно отредактировать
источник

M

Mikhail in Python для анализа данных
это называется «задача о назначениях», или assignment problem
источник

D

Daria in Python для анализа данных
Pavel Zheltouhov
Есть. Бюджетник идет к Начальнику и они объявляют Тендер
ммм, а если безработный? *с тревогой подумалось мне* он же и вовсе халявщик! нет чтобы, во-первых, работать, во вторых, гуглить аки пчела, и в-третьих, наверное, платить за свой счёт за полезные советы, оставив надежду на бесплатную помощь... Эхх 😂
источник

M

Mikhail in Python для анализа данных
Daria
ммм, а если безработный? *с тревогой подумалось мне* он же и вовсе халявщик! нет чтобы, во-первых, работать, во вторых, гуглить аки пчела, и в-третьих, наверное, платить за свой счёт за полезные советы, оставив надежду на бесплатную помощь... Эхх 😂
источник

PQ

Paul Qwetek in Python для анализа данных
Mikhail
сначала распределите то что распределяется однозначно (по приоритету), потом используйте linear_sum_assignment из scipy для матчинга тех кто не поместился и свободных слотов
Михаил, Спасибо!
источник

PZ

Pavel Zheltouhov in Python для анализа данных
В этот раз вроде повезло. Есть программа. Даже с интерфейсом
источник

M

Mikhail in Python для анализа данных
для тех кто родился после 2000 года, это из клипа Бритни Спирс на песню "Toxic"

я вот год назад решал аналогичную задачу на работе, спросить было не у кого, в итоге догуглился конечно через пару недель, но это действительно сложно — правильно сформулировать запрос под конкретную  задачу
источник

M

Mikhail in Python для анализа данных
не все знают как алгоритмы/вычислительные задачи называются
источник

VM

Valerii Mamontov in Python для анализа данных
Paul Qwetek
Всем привет! Занимаюсь планированием распределения детей в пункты проведения экзаменов, с Питоном знаком слабо, поэтому подскажите, в какую сторону копать. Дано - 9 пунктов, с разной вместимостью, у каждого - свой код и своя вместимость. При распределении детей участники из конкретной школы, если она является пунктом проведения экзаменов, идут сдавать у себя, у них приоритет, вместимость пункта уменьшается на эту величину. Оставшихся участников надо равномерно распределить по пунктам. Плюс у программы должна быть возможность перераспределения участников вручную. Количество участников из всех школ разное, разумеется, т.е. тут надо перебирать значения. Может есть какое-то готовое решение?
Здравствуйте! В сети есть книга "Грокаем алгоритмы", в ней описана похожая на Вашу задача (задача про рюкзак).
источник