Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Bonjour,
Etant novice dans QlikView, je me permet de poser mon problème ici en espérant que vous puissiez m'aider ... (Google ne l'a pas fait )
J'ai injecté un fichier Excel de ce type sur Qlikview :
Et j'aimerai créer un graphique, avec en dimension la "Date du contact" (pour ça pas de soucis).
Le problème viens pour les expressions, j'aimerai en créer 4 :
Je suppose que pour cela il faut utiliser des formules, j'ai tenter un "count" sans réussite ... J'avoue que je me perd un peu dans tout ces codes...
Toute aide sera la bienvenue Merci d'avance !!
Bonjour Laetitia
la formule de Maxgro est bonne.
Ainsi pour les insatisfaits (détracteurs) tu as : (attention j'ai enlevé les notes à 7 appartenant aux neutres / passifs)
count({$ <RECO={1,2,3,4,5,6,}>} RECO)
( ajouter 0 dans la formule si il est possible de mettre une note à zéro, car l'échelle d'un NPS est normalement de 0 à 10)
pour les neutres / passifs :
count({$ <RECO={7,8}>} RECO)
Pour les promoteurs :
count({$ <RECO={9,10}>} RECO)
calcul du NPS =
count({$ <RECO={9,10}>} RECO) - count({$ <RECO={1,2,3,4,5,6,}>} RECO)
l'approche de Piet est un peu différente,puisqu'elle te propose dans le script de créer une table NPS avec une dimension [NPS Groups] regroupant tes notes :
de 0 à 6 ou 1 à 6 = détracteurs
7 et 8 = passifs ou neutres
9 et 10 = promoteurs
puis en utilisant applymap d'ajouter la dimension NPS group à coté de la dimension RECO.
Enfin tu peux aussi ajouter dans ton script ceci je pense :
if(RECO<7,'détracteurs',if(RECO>8,'promoteurs','passifs')) AS "NPS Groups",
Et si tu souhaites créer 3 dimensions différentes : PROMOTEURS , DETRACTEURS, PASSIFS :
if(RECO<7,1,0) AS DETRACTEURS,
if(RECO=7,OR(RECO=8),1,0) AS PASSIFS,
if(RECO>8,1,0) AS PROMOTEURS,
Cordialement,
Bruno
Insatisfait
count({$ <RECO={1,2,3,4,5,6,7}>} RECO)
You can use something like the following
LoadScript
NPS:
mapping load * inline [
Score , NPS_Group
1, 'Criticasters'
2, 'Criticasters'
3, 'Criticasters'
4, 'Criticasters'
5, 'Criticasters'
6, 'Criticasters'
7, 'Criticasters'
8, 'Passieven'
9, 'Passieven'
10, 'Promotors'
11, 'Promotors'
];
Data:
LOAD
...
ApplyMap('NPS',RECO)) as [NPS Groups],
...
FROM...
Expression:
=Num(((Count({<[NPS Groups]={'Promotors'}>} RECO)/Count({<[NPS Groups]={'*'}>} RECO))-(Count({<[NPS Groups]={'Criticasters'}>} RECO)/Count({<[NPS Groups]={'*'}>} RECO))),'0%')
Your scale may also run from 0-10, just change the mapping load accordingly
Bonjour Laetitia
la formule de Maxgro est bonne.
Ainsi pour les insatisfaits (détracteurs) tu as : (attention j'ai enlevé les notes à 7 appartenant aux neutres / passifs)
count({$ <RECO={1,2,3,4,5,6,}>} RECO)
( ajouter 0 dans la formule si il est possible de mettre une note à zéro, car l'échelle d'un NPS est normalement de 0 à 10)
pour les neutres / passifs :
count({$ <RECO={7,8}>} RECO)
Pour les promoteurs :
count({$ <RECO={9,10}>} RECO)
calcul du NPS =
count({$ <RECO={9,10}>} RECO) - count({$ <RECO={1,2,3,4,5,6,}>} RECO)
l'approche de Piet est un peu différente,puisqu'elle te propose dans le script de créer une table NPS avec une dimension [NPS Groups] regroupant tes notes :
de 0 à 6 ou 1 à 6 = détracteurs
7 et 8 = passifs ou neutres
9 et 10 = promoteurs
puis en utilisant applymap d'ajouter la dimension NPS group à coté de la dimension RECO.
Enfin tu peux aussi ajouter dans ton script ceci je pense :
if(RECO<7,'détracteurs',if(RECO>8,'promoteurs','passifs')) AS "NPS Groups",
Et si tu souhaites créer 3 dimensions différentes : PROMOTEURS , DETRACTEURS, PASSIFS :
if(RECO<7,1,0) AS DETRACTEURS,
if(RECO=7,OR(RECO=8),1,0) AS PASSIFS,
if(RECO>8,1,0) AS PROMOTEURS,
Cordialement,
Bruno
Bonjour,
Déjà merci à tous pour vos réponses !!
Bruno Bertels, j'ai essayé la technique que tu m'as donné :
Ainsi pour les insatisfaits
count({$ <RECO={0,1,2,3,4,5,6}>} RECO)
pour les neutres / passifs :
count({$ <RECO={7,8}>} RECO)
Pour les promoteurs :
count({$ <RECO={9,10}>} RECO)
calcul du NPS =
count({$ <RECO={9,10}>} RECO) - count({$ <RECO={1,2,3,4,5,6,}>} RECO)
Cependant, quand je fais mon graphique et que je met ces formules en expression, j'obtiens ceci :
Impossible de mettre l’échelle sur 100% ! J'ai essayer de mettre "Relatif" ou encore "Cumul total" mais rien ne marche ....
En fait je souhaiterais avoir pour chaque trimestres mes données sur 100%histoire de pouvoir les comparer d'une année sur l'autre (sur le graph ci dessus, chaque expression est en "Relatif" "Absence de cumul" et il y a une dimension qui est la date).
Quelqu'un aurait une solution ?
Merci d'avance !!!!
J'ai trouvé une solution, en divisant chaque expression par "/count(RECO)"
Par exemple pour les insatisfaits
count({$ <RECO={0,1,2,3,4,5,6}>} RECO)/count(RECO) ce qui nous donne le % d'insatisfaits sur le total de répondant et du coup un graph sur 100% (ou presque) :
Le seul soucis qui se pose est pour les "vide" en gros les ceux qui n'ont pas donné de notes. Est ce qu'il y a aurait une formule qui existerai pour exclure les vide ?
Merciiii
Bonjour Laetitia
En effet pour avoir les résultats de chaque groupe en % il faut les diviser par le total RECO
Pour éviter les vides :
méthode 1
count({$ <RECO={0,1,2,3,4,5,6}>} RECO) / count({$ <RECO-={null()}>} RECO)
le total RECO prend toutes les valeurs différentes de NULL
méthode 2
count({$ <RECO={0,1,2,3,4,5,6}>} RECO) / count({$ <RECO={'>=0'}>} RECO)
le total RECO prend toutes les valeurs supérieures ou égal à Zéro.
Bruno
Génial merci beaucoup !! J'ai utilisé la deuxième solution qui marche à merveille
Si je peux me permettre, j'aurai encore une question, plus d'ordre pratique pour les utilisateurs.
J'aimerai mettre un objet "bouton" (ou autre) ou il y aurait juste à cliquer pour avoir soit la "RECO" soit la "SAT" (car j'ai appliquer ta formule pour calculer mon NPS = RECO et mon NSS = SAT).
Je m'explique, la j'ai mis un objet "selection" :
Combiner avec une condition (par exemple pour les détracteur j'ai cocher conditionnel et j'ai mis "
GetSelectedCount (RECO)
and RECO<7"
Ce qui permet d'afficher soit la RECO (comme ci dessus) soit la SAT (en dé-sélectionnant la RECO et en sélectionnant toutes les valeurs de la SAT).
Mais je ne trouve pas ça très pratique, du coup j'aimerai mettre par exemple un bouton "RECO" ou quand on clic dessus on a les détracteur, promoteur, passif et NPS qui s'affiches (comme ci dessus) et un ""bouton "SAT" ou quand on clic dessus on a les très satisfait, passif, insatisfait et NSS qui s'affiche.
Est ce possible ?
Encore merci 1000 fois ... !
Re,
En effet passer par un bouton (RECO/SAT) mettant à jour le graphique suivant le type de mesure souhaitée serait plus confortable pour l'utilisateur.
Personnellement j'utilise QlikSense et non QlickView , aussi pour Qlik View je suis un peu démuni pour t'aider. Mais je suis sur que cela est possible.
Sur Qlik Sense, j'utiliserai l'extension QsVariable pour créer une variable afin d'avoir soit la formule de NPS soit la formule de NSS suivant la sélection faite sur le bouton.
Aussi j'imagine que Qlik view doit un peu fonctionner de la même manière.
Regarde dans qlikview pour créer une variable avec un bouton
on peut l'appeler vChoix avec pour valeur 1 pour NPS et 0 pour NSS
Dans le graphique en expression quelque chose comme çà :
if(vChoix=1,MON CALCUL DE NPS,MON CALCUL DE NSS)
J'espère que çà t'aidera sinon un expert Qlikview t'apportera la solution.
Bruno