Automatiser la création de groupes de personnes

Fermé
preliator13600 Messages postés 73 Date d'inscription lundi 10 février 2020 Statut Membre Dernière intervention 22 avril 2023 - 10 oct. 2020 à 14:06
yg_be Messages postés 22846 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 3 juin 2024 - 17 janv. 2021 à 17:23
Bonjour,

Je dispose d'un dataframe qui représente des personnes, et leurs deux souhaits d'appartenance à un groupe de travail (il y a 5 groupes de travail, et ils doivent se départager. Pour cela, ils énoncent 2 souhaits). On a donc une première colonne de nom de personnes, une deuxième colonne (qui représente un premier vœux d'appartenance à un groupe) où ces personnes devaient entrer un numéro de groupe (de 1 à 5), et une troisième colonne (qui représente un second vœux d'appartenance à un groupe) où les personnes devaient entrer un numéro de groupe (de 1 à 5).

Voici un exemple reproductible :

import pandas as pd
import numpy as np
from numpy import random

data = pd.DataFrame({"prenom" : ["personne1", "personne2", "personne3", "personne4", "personne5", "personne6", "personne7", "personne8", "personne9", "personne10", "personne11", "personne12", "personne13", "personne14", "personne15", "personne16", "personne17", "personne18", "personne19", "personne20"], "choix1" : np.random.randint(low=1, high=5, size=(20,)), "choix2" : np.random.randint(low=1, high=5, size=(20,))})


Je souhaite créer un programme qui répartissent aléatoirement ces personnes dans ces 5 groupes de travail (5 groupes de 4 personnes) en prenant en compte leurs choix. En priorité, on se base sur leur premier vœux ; sinon, on se base sur leur deuxième vœux. L'objectif, c'est que les 5 groupes possèdent bien 4 personnes.

Est-il possible de faire cela sur Python ?
Merci.
A voir également:

4 réponses

yg_be Messages postés 22846 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 3 juin 2024 1 473
10 oct. 2020 à 14:36
bonjour,
c'est possible, ou pas, en fonction des choix exprimés.
si tu veux réaliser cela, le point de départ, c'est de définir la méthode à utiliser pour faire cette répartition.
pour t'aider dans cette réflexion, fais peut-être cela avec 20 petits cartons sur lesquels tu écris le prénom et les deux choix.
0
yg_be Messages postés 22846 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 3 juin 2024 1 473
10 oct. 2020 à 15:44
qu'as-tu essayé?
dans quel contexte fais-tu ce travail?
0
preliator13600 Messages postés 73 Date d'inscription lundi 10 février 2020 Statut Membre Dernière intervention 22 avril 2023
10 oct. 2020 à 16:45
Ce travail provient de ma simple curiosité. Dans ma classe de Master, on en arrive souvent à se répartir dans des groupes avec ce système, où chacun expose 2 "vœux", un prioritaire et un secondaire. Je me demandais s'il était possible d'automatiser le processus de répartition dans des groupes grâce à ces vœux, au lieu de le faire manuellement et de perdre du temps.

Pour le moment, je suis en pleine réflexion sur comment je pourrais aborder le problème :) je n'ai rien vraiment testé pour l'instant.
0
yg_be Messages postés 22846 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 3 juin 2024 1 473
Modifié le 10 oct. 2020 à 18:49
moi j'essaierais la méthode hongroise.
0
yg_be Messages postés 22846 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 3 juin 2024 1 473
17 janv. 2021 à 17:23
peux-tu donner suite, ou marquer comme résolu?
0
yg_be Messages postés 22846 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 3 juin 2024 1 473
10 oct. 2020 à 18:50
ton exemple n'est pas réellement reproductible, comme il se comporte chaque fois différemment.
par ailleurs, tu peux avoir deux choix identiques pour une personne, souhaites-tu réellement cela?
0