FONCTIONNALITES STATISTIQUES : MODE SIMPLE
IDSS utilise des
questionnaires en html (.doc converti sous Word ou
html
produit en format natif par un logiciel du type NVU ou KOMPOZER,
disponible gratuitement http://www.kompozer.net).
Deux types de modes de lecture sont prévus : le mode simple et le mode questionnaire. Cette page présente le mode simple.
Deux types de modes de lecture sont prévus : le mode simple et le mode questionnaire. Cette page présente le mode simple.
1. Input
Le questionnaire est lu à partir de l'input :-i (chemin du questionnaire)
L'application détermine la valeur des items de saisie ainsi que leur cumul par ligne, variable et question.
1.1 Lecture des lignes de commentaire
Il est possible de
spécifier manuellement les noms de variable, labels
et formats correspondants,
par lecture d'une ligne de commentaires introduite par le digraphe //
comme suit :
// variable label format modification
Le champ modification
correspond à des items de saisie
supplémentaires
demandés par les opérateurs de saisie, et qui s'ajoutent
aux formats
prévus lors de la conception
du
questionnaire. Il n'est lu sur les questionnaires qu'en dernière
position des lignes de commentaires, avant une balise de paragraphe
fermante (</p>).
L'option -M
doit être spécifiée en ligne de commande pour que la lecture de ce
champ soit effective.
Le format réel est donc la somme du format et du champ modification.Il peut être codé selon les conventions du langage C :
%Ns champ de N caractères (%s pour un seul caractère)
%Nd champ de N chiffres (%d pour un seul chiffre)
ou du logiciel SAS :
$N. champ de N caractères ($1. pour un seul caractère)
N. champ de N chiffres (1. pour un seul chiffre)
Les notations relatives aux décimales de C ou de SAS ne sont toutefois pas utilisées ; une entrée décimale du type :
3.3 ou 3,3
sera ainsi enregistrée par le format %3d, ou 3. sous SAS (R), le séparateur des décimales comptant pour une position de saisie/lecture.
Cliquer ici pour voir l'exemple 1
1.2 Génération automatique des noms de variable et des labels
Les noms de variable,
labels et informats peuvent être lus sur le
questionnaire. Il suffit alors d'insérer des doubles symboles // avant
chaque variable dans le questionnaire :
Cliquer ici pour voir
l'exemple 2Lorsqu'il
y a une et une seule variable par question, il est possible
de ne pas insérer des doubles caractères // pour isoler les variables
sur le questionnaire, en utilisant l'option -O. Ce
n'est pas le cas dans l'exemple 2, puisque nous avons deux variables
pour la même question.
Pour chacune des variables introduites par //, un nom de variable automatique est créé en l'absence de nom explicitement renseigné.
L'automatisation du nom de variable produit des noms du type VAR1, VAR2, ..., VARN (option -A).
L'informat est automatiquement calculé : les cases de tableau sont par défaut du format numérique, sauf lorsqu'un caractère alphabétique y est détecté.
Pour chacune des variables introduites par //, un nom de variable automatique est créé en l'absence de nom explicitement renseigné.
L'automatisation du nom de variable produit des noms du type VAR1, VAR2, ..., VARN (option -A).
L'informat est automatiquement calculé : les cases de tableau sont par défaut du format numérique, sauf lorsqu'un caractère alphabétique y est détecté.
Dans ce cas, l'informat
est automatiquement converti en chaîne de
caractères.
L'automatisation des labels permet de récupérer dans le texte de la question des segments de texte entre accolades (option -U).
Dans le cas où cette fonctionnalité est activée, il importe de n'utiliser les accolades que pour cet emploi. L'utilisation d'accolades ouvrantes ou fermantes non refermées/non ouvertes produira un message d'erreur et la sortie de l'application.
Lorsque le questionnaire est mis en forme (option -o) le nouveau questionnaire ainsi produit ne comporte plus aucune accolade. Ces caractères sont remplacés par le sépareteur ASCII de code hexadécimal 0x1F, qui n'apparaît pas à l'impression. Les questionnaires ainsi mis en forme peuvent être utilisés avec l'option -i ou -ir, les séparateurs 0x1F jouant le même rôle que les accolades. Il est également possible d'utiliser ces séparateurs à la place des accolades dès la conception du questionnaire.
L'automatisation des labels permet de récupérer dans le texte de la question des segments de texte entre accolades (option -U).
Dans le cas où cette fonctionnalité est activée, il importe de n'utiliser les accolades que pour cet emploi. L'utilisation d'accolades ouvrantes ou fermantes non refermées/non ouvertes produira un message d'erreur et la sortie de l'application.
Lorsque le questionnaire est mis en forme (option -o) le nouveau questionnaire ainsi produit ne comporte plus aucune accolade. Ces caractères sont remplacés par le sépareteur ASCII de code hexadécimal 0x1F, qui n'apparaît pas à l'impression. Les questionnaires ainsi mis en forme peuvent être utilisés avec l'option -i ou -ir, les séparateurs 0x1F jouant le même rôle que les accolades. Il est également possible d'utiliser ces séparateurs à la place des accolades dès la conception du questionnaire.
Cliquer ici pour voir l'exemple 3
Lorsque plusieurs
variables sont introduites dans la même question, les
accolades ne doivent pas figurer dans le texte de la
question entre le numéro N. et la fin du premier paragraphe de la
question. Cette possibilité est ouverte lorsqu'il y a une seule
variable par question :
Cliquer ici pour voir l'exemple 4
Cliquer ici pour voir l'exemple 4
1.3 Automatisation partielle
Il est possible d'utiliser une combinaison des options d'automatisation
et de la saisie manuelle des noms de variable, labels et informats sur
les lignes de commentaire.
L'option -H permet d'ignorer les noms de variable, labels et informats de la ligne de commentaire pour ne lire que les modifications demandées par l'opérateur de saisie (dans le cas où le dessin d'enregistrement effectif serait différent de celui qui était prévu).
Le tableau 3 résume les différentes combinaisons possibles des options d'automatisation et du format des lignes de commentaire.
L'option -H permet d'ignorer les noms de variable, labels et informats de la ligne de commentaire pour ne lire que les modifications demandées par l'opérateur de saisie (dans le cas où le dessin d'enregistrement effectif serait différent de celui qui était prévu).
Le tableau 3 résume les différentes combinaisons possibles des options d'automatisation et du format des lignes de commentaire.
1.4 Génération automatique des formats
Certains champs du questionnaire correspondent à des zones de saisie. Ces champs sont identifiés et le nombre de caractères (positions de saisie) correspondant à chaque champ de saisie est automatiquement calculé.Trois types de champs
peuvent être identifiés :
1. les grilles de saisie
Supposons qu'une variable contient une grille de saisie ("peigne") constituée de N cases de tableau, réparties dans un nombre quelconque de lignes.
Ces cases peuvent être séparées ou non par du texte, contiguës ou non. La variable aura alors pour format %Nd (ou %Ns, ou $N., ou N., selon les cas). Un exemple de calcul du format pour les grilles de saisie est donné en annexe.
2. les cases à cocher
La même option permet également d'identifier les cases à cocher (checkboxes), utilisées pour les réponses fermées binaires (oui/non).
Le format de ces cases à cocher est du type %s (ou $1.)
3. les caractères diacritiques
Des caractères diacritiques sont prévus pour signaler à l'application que la ligne qui suit ce caractère contient une question fermée. Le caractère '-' (tiret simple) est réservé par l'application. Deux autres caractères réservés peuvent être spécifiés à l'étape de compilation par des directives.
Des précisions sur les caractères diacritiques sont données dans la rubrique Spécifications.
Un exemple de calcul de formats pour les questions fermées est donné en annexe.
Lorsque l'option -A est activée, le calcul automatique des formats, qui est réalisé dans tous les cas de figure, est utilisé pour écrire l'étape DATA d'importation du fichier plat en base SAS (voir 4). Inversement, lorsque cette option n'est pas activée, le format doit être explicitement renseigné sur la ligne de commentaires introduite par le digraphe //
1. les grilles de saisie
Supposons qu'une variable contient une grille de saisie ("peigne") constituée de N cases de tableau, réparties dans un nombre quelconque de lignes.
Ces cases peuvent être séparées ou non par du texte, contiguës ou non. La variable aura alors pour format %Nd (ou %Ns, ou $N., ou N., selon les cas). Un exemple de calcul du format pour les grilles de saisie est donné en annexe.
2. les cases à cocher
La même option permet également d'identifier les cases à cocher (checkboxes), utilisées pour les réponses fermées binaires (oui/non).
Le format de ces cases à cocher est du type %s (ou $1.)
3. les caractères diacritiques
Des caractères diacritiques sont prévus pour signaler à l'application que la ligne qui suit ce caractère contient une question fermée. Le caractère '-' (tiret simple) est réservé par l'application. Deux autres caractères réservés peuvent être spécifiés à l'étape de compilation par des directives.
Des précisions sur les caractères diacritiques sont données dans la rubrique Spécifications.
Un exemple de calcul de formats pour les questions fermées est donné en annexe.
Lorsque l'option -A est activée, le calcul automatique des formats, qui est réalisé dans tous les cas de figure, est utilisé pour écrire l'étape DATA d'importation du fichier plat en base SAS (voir 4). Inversement, lorsque cette option n'est pas activée, le format doit être explicitement renseigné sur la ligne de commentaires introduite par le digraphe //
2. Output : questionnaire mis en forme
La mise en forme du questionnaire d'enquête comprend :- la mise en forme (couleur, style, taille de police) des questions et numéros de question ;
- l'actualisation des numéros de questions ;
- l'insertion d'informations nouvelles, à
titre optionnel, ainsi que leur mise en forme : numéros de ligne du
questionnaire,
lignes de commentaires,
compteurs d'items de saisie.Un exemple de mise en forme est donné ici ainsi que dans l'exemple 5 et dans l'exemple 6.
Cette opération de mise
en forme produit un nouveau questionnaire, sauf
si l'option -r
est activée. Dans ce cas, le fichier initial est transformé et la
version d'origine est perdue.
La mise en forme des questionnaires peut être désactivée par l'option -a.
Une fois le questionnaire lu, il peut être reformaté pour donner un questionnaire colorisé. Il faut alors activer l'option :
La mise en forme des questionnaires peut être désactivée par l'option -a.
Une fois le questionnaire lu, il peut être reformaté pour donner un questionnaire colorisé. Il faut alors activer l'option :
-o (chemin du formulaire reformaté)
Les couleurs sont
paramétrables pour le numéro de question, les
questions, les numéros
de
lignes, les zones de commentaires (noms de variable, labels, informats)
et les
compteurs d'items par question.
Elles peuvent être choisies dans la liste suivante (termes anglais liés
au codage HTML) :rgb(x%, y%, z%) : spécification RVB
x, pourcentage de rouge ; y, pourcentage de vert ; z, pourcentage de bleu
black : "noir" ; navy : "bleu marine" ; green :"vert" ; teal : "bleu" ;
maroon : "marron" ; purple : "violet" ; olive : "vert olive"; silver : "argent" ;
gray : "gris" ; lime : "vert clair" ; aqua : "bleu turquoise" ; red : "rouge" ;
orange: "orange" ; white : "blanc" ; yellow : "jaune"
Les couleurs de numéros de questions et des questions sont introduites par -q (couleur du n°) (couleur de la question).
La couleur des numéros de ligne est donnée par -l (couleur).
La couleur des compteurs d'items de saisie est donnée par -n (couleur).
Enfin, la couleur des lignes de commentaire peut être spécifiée par -c (couleur).
Lorsque -l, -n ou -c ne sont pas
utilisés, les informations
correspondantes ne sont pas insérées dans la mise en forme du
questionnaire. Lorsque -q
n'est pas utilisé, le texte du numéro de
question et de la question elle-même n'est pas colorisé.
Lorsque -q est utilisé avec une seule couleur, cette couleur est affectée au numéro de question. Le couleur de la question sera la couleur par défaut de la question.
Lorsque -l, -n, ou -c sont utilisés sans spécification de la couleur, c'est également la couleur par défaut pour chacune de ces options qui est utilisée. Ces couleurs peuvent être différentes.
Les couleurs par défaut sont définies par le fichier constants.h. Elles sont rappelées ci-dessous, pour chacune des options :
Lorsque -q est utilisé avec une seule couleur, cette couleur est affectée au numéro de question. Le couleur de la question sera la couleur par défaut de la question.
Lorsque -l, -n, ou -c sont utilisés sans spécification de la couleur, c'est également la couleur par défaut pour chacune de ces options qui est utilisée. Ces couleurs peuvent être différentes.
Les couleurs par défaut sont définies par le fichier constants.h. Elles sont rappelées ci-dessous, pour chacune des options :
-q (numéro de question) | navy |
(question) | lime |
-l | red |
-n | orange |
-c | maroon |
En outre, les balises HTML de ces zones peuvent être partiellement spécifiées :
- la grasse (option -K1) et le style de la police des lignes de commentaires (option -K2) ;
- la taille de la police des numéros de ligne (option -K3), des lignes de commentaire (option -K4) ;
- le style (neutre, gras, italique) des questions (option -K5), des numéros de question (option -K6).
L'option K1 est suivie d'un nombre (typiquement entre 500 et 1000) ; l'option K2 d'une mention de style (italic, bold).
Des nombres typiquement
compris entre 6 et 12 suivent K3
et K4. Les
options K5
et K6
utilisent des têtes de balise (b pour bold,
"gras" ; i pour italic,
"italiques" ; span pour "étendue neutre");
Lorsque l'option de formatage du questionnaire est activée, les numéros
de question sont
réactualisés.L'original peut ainsi simplement comporter des 1. (ou n'importe quel numéro inférieur à 1000), suivis du texte de la question courante, pour chaque question.
3. Output : fichier plat et fichier à séparateurs
Les informations
collectées sur le questionnaire permettent ensuite de
traiter la base (fichier plat) issue des opérations de saisie pour
produire des fichiers de type .csv, .txt, ou
avec un
séparateur spécifié quelconque (mono-caractère) pour importation
sous
tableur de type MS-Excel ou Calc.
Ces bases sont produites par l'activation des options :-B -e (chemin du fichier plat) -s (chemin de la base à séparateurs)
et, optionnellement :
-$ (caractère séparateur de variables) -d (caractère séparateur des décimales)
Les séparateurs de
décimales peuvent être transformés (par exemple
. en
,) ce qui est utile par exemple pour passer de SAS à Excel.
Il convient d'éviter de confondre les
séparateurs de décimales et de
champs.
Pour éviter ce problème sous csv, le format csv (ligne de commande -$ "," ) est converti en séparateurs à point-virgule lorsque le format des décimales est également la virgule (ligne de commande -, ",").
Par défaut, le séparateur des variables est la tabulation, et le séparateur des décimales est la virgule.
Pour éviter ce problème sous csv, le format csv (ligne de commande -$ "," ) est converti en séparateurs à point-virgule lorsque le format des décimales est également la virgule (ligne de commande -, ",").
Par défaut, le séparateur des variables est la tabulation, et le séparateur des décimales est la virgule.
Dans certains cas, le
fichier plat peut contenir des espaces blancs à
la place de valeurs nulles, ou vice-versa. Pour éviter des erreurs
d'interprétation, il est alors nécessaire de convertir les
espaces blancs en valeurs nulles. Cette transformation est
automatiquement effectuée par l'option -z, avant
l'insertion des séparateurs.
Il est possible
d'extraire une sous-base de X lignes et Y colonnes de
la base à séparateurs, constituée des lignes L à L+X-1 incluses et des
colonnes C à C+Y-1 incluses, où L et C
sont respectivement le rang de la première ligne et de la première
colonne extraite (de haut en bas pour les
lignes et de gauche à droite pour les colonnes).
Il suffit pour cela de spécifier :-P L L+X-1 pour l'extraction des lignes, et/ou
-I C C+Y-1 pour l'extraction des colonnes.
La numérotation des lignes et des colonnes commence à 0, conformément aux conventions de type "langage C".Revenir au début
4. Output : étape SAS(R) DATA
En outre, l'étape DATA d'importation des données sous SAS (R) peut être automatiquement générée.La structure de ce programme SAS est la suivante :
DATA nom_de_bibliothèque(library).nom_de_base ;
ATTRIB
NOM_DE_VARIABLE_1 LABEL_1
NOM_DE_VARIABLE_2 LABEL_2
NOM_DE_VARIABLE_3 LABEL_3
(...)
;
INFILE chemin_du_fichier_plat_à_importer
options_sas
;
INPUT
NOM_DE_VARIABLE_1 INFORMAT_1
NOM_DE_VARIABLE_2 INFORMAT_2
NOM_DE_VARIABLE_3 INFORMAT_3
(...)
;
RUN;
L'exécution d'une étape
DATA de ce type sous SAS permet d'importer un
fichier plat et de le transformer en base SAS. Les noms de
variables et labels sont lus dans le
questionnaire. Ils sont importés comme noms de variable et comme labels
SAS. Les valeurs de chaque variable reçoivent l'informat
SAS correspondant à l'informat lu dans le questionnaire (ou
automatiquement calculé si l'option -A
est activée).
Les informats peuvent être aussi spécifiés dans les lignes de commentaire introduites par // après le noms de variable et le label. Dans ce cas l'option -A ne doit pas être utilisée. S'il existe un champ modification en dernière position de ligne de commentaire, l'informat transmis au programme SAS est la somme de l'informat et de la modification (voir 1.1)
Si l'informat est spécifié selon les conventions du langage C, il est possible de convertir les valeurs portées dans le questionnaire en informats de type SAS en utilisant l'option -X. Cette option n'est activée que pour la génération d'étapes DATA du logiciel SAS.
Les paramètres du programme SAS sont spécifiés comme suit :
Les informats peuvent être aussi spécifiés dans les lignes de commentaire introduites par // après le noms de variable et le label. Dans ce cas l'option -A ne doit pas être utilisée. S'il existe un champ modification en dernière position de ligne de commentaire, l'informat transmis au programme SAS est la somme de l'informat et de la modification (voir 1.1)
Si l'informat est spécifié selon les conventions du langage C, il est possible de convertir les valeurs portées dans le questionnaire en informats de type SAS en utilisant l'option -X. Cette option n'est activée que pour la génération d'étapes DATA du logiciel SAS.
Les paramètres du programme SAS sont spécifiés comme suit :
-Ts nom_de_bibliothèque(library).nom_de_base
-To options_sas
-Te chemin_du_fichier_plat_à_importer
-T chemin du programme .sas généré par cette option
5.
Output : table de correspondance
Une table de correspondance peut être produite, qui donne le
dessin
d'enregistrement et son cumul, par ligne de questionnaire, variable et
question (au choix). La table
renseigne également les noms de variable, les labels, informats et
modifications de l'informat demandées par
l'opérateur de saisie.La génération des tables
est assurée par l'option -t
et le répertoire
qui contient les tables peut être spécifié par l'option -tp
(chemin du répertoire)
Cliquer ici pour voir l'exemple 7
Les trois colonnes #VAR
(rang de la variable), #QUEST (rang de la
question) et #LIGNE (numéro de ligne) sont toujours générées. Pour
placer la colonne #VAR à gauche de la table, et ainsi obtenir
l'ensemble des valeurs des autres
colonnes pour chaque variable, l'option -Z sera sélectionnée.
Pour obtenir un affichage par ligne de questionnaire, il suffit de choisir -L à la place de -Z. L'option -Q permet d'afficher une table plus compacte, qui ne comporte que les valeurs des champs pour chaque question du formulaire.
Pour obtenir un affichage par ligne de questionnaire, il suffit de choisir -L à la place de -Z. L'option -Q permet d'afficher une table plus compacte, qui ne comporte que les valeurs des champs pour chaque question du formulaire.
Cliquer ici pour voir le tableau des options de table