incubateur-ademe/nosgestesclimat

[Publicodes] Attribution d'une valeur à chaque réponse

JuliePouliquen opened this issue · 0 comments

Problématique

Le travail mené actuellement sur les valeurs par défaut montre à quel point il n'est pas facile à ce stade de les inclure dans le modèle. Si l'on veut s'approcher des données de marché "moyenne des français", on ne peut avoir une valeur par défaut qui est un "choix" d'une réponse plutôt qu'une autre, ce qui est le cas actuellement. Le seul type de questions où cela fonctionne est les questions attendant une valeur (type : nombre de km moyen effectués en voiture). Pour les autres questions, ça ne marche pas :

  • Questions booléennes : on attend un oui ou un non. Par défaut c'est oui, ou c'est non.
  • Questions à choix multiples : on donne une réponse par défaut parmi plein. Alors que la distribution de ces réponses ne correspond pas du tout à cette façon de faire (gabarit d'une voiture, par exemple).

Contournements

Pour les mosaïques, nous avons actuellement fait un contournement : si pas de choix utilisateur, alors on calcule une moyenne par défaut de l'ensemble de la question, qu'on lui attribue. Le procédé est un peu lourd et à revoir dans le cadre du travail sur les #mosaïques.

Du côté des booléennes, il est possible que nous nous en sortions avec des variations, mais ce n'est pas encore sûr.

Proposition

L'idée ce serait de pouvoir donner des valeurs à chacune des réponses possibles. Si c'est un booléen,de donner un pourcentage au true (et donc automatiquement (1 - ce pourcentage) au false). Si la donnée attendue est une valeur, alors valeur par défaut, et si la question est "une possibilité" alors pourcentage pour chacune des possibilités.
Exemples :

  • Booléenne : Moto ? 13% oui
  • QCM :
    • Gabarit voiture ? 16% SUV - 58% berlines - ...
    • Motorisation voitures ? 55% diesel thermique - 40% essence thermique - 2% essence hybride - 1% élec...
  • Mosaïques : pareil que pour les QCM
    • Musée : 33% régulièrement - 33% occasionnellement - 34% pas du tout

Ce serait très clair côté code. Nous pourrions distinguer valeur par défaut (valeur de départ) et comportement par défaut, qui lui resterait dépendant de l'attribut par défaut: et qui resterait "oui" pour les voitures, "non" pour les motos, par exemple.