Codifica¶
L’istruzione coding carica e integra con i dati del dataset attivo la codifica delle risposte aperte. E’ possibile codificare i nuovi dati nelle variabili esistenti oppure in un set di nuove variabili.
La codifica deve essere contenuta in file in formato XLSX.
Argomenti:
- filename: il nome del file XLSX che contiene la codifica delle risposte aperte
- :codes => "name": il nome del foglio che contiene la codifica. Se non specificato viene utilizzato il primo foglio
- :info => "name"|["filename", "name"]: il nome del foglio (ed eventualemnte del file) che contiene le informazioni relative alla codifica. Se non specificato viene utilizzato il secondo foglio
- :label => "name"|["filename", "name"]: il nome del foglio (ed eventualemnte del file) che contiene le etichette delle nuove variabili/livelli. Se non specificato viene utilizzato il terzo foglio se presente (non è obbligatorio specificare le etichette)
- :id => "name": l’intestazione della colonna che contiene l’identificativo del record (default recid)
- :q => "name": l’intestazione della colonna che contiene il nome della domanda (solo per formato long, default question)
- :qid => question_id|[question_ids]: il nome o l’elenco dei nomi delle question che devono essere codificate. Deve corrisponde al contenuto della colonna question del foglio dei metadati. Serve per non considerare tutte le righe dei metadati, ma solo una o alcune (default considera tutte le righe)
- :notfound => :error|:skip: comportamento in caso di codice identificativo del record non presente nei dati: :error (default) lo scrip si interrompe con un errore; :skip viene emesso un warning e il programma prosegue
1 2 | coding "coding"
coding "coding", codes: "codifica", info: "info", label: ["data_labels", "labels"]
|
codes¶
Il foglio codes contiene i nuovi codici da attribuire ai dati e può avere due formati: wide e long.
wide¶
Nel formato wide ogni riga rappresenta un caso e la codifica delle diverse domande viene posta in colonne diverse. Una colonna contiene il codice identificativo del record.
recid | q1 | q1_cod1 | q1_cod2 | q1_cod3 | q2 | q2code |
---|---|---|---|---|---|---|
1234 | bla bla bla | 1 | 2 | |||
1235 | bla bla bla | 4 | bla | 1 | ||
1236 | bla bla bla | 12 | ||||
1237 | bla bla bla | 14 | 15 | bla | 5 | |
1238 | bla | 7 | ||||
1239 | bla bla bla | 6 | 3 | 13 | ||
1240 | bla | 5 | ||||
... |
long¶
Nel formato long ogni riga contiene la codifica di una domanda per un caso. I codici delle diverse domande sono posti nelle stesse colonne. Una colonna contiene il codice identificativo del record. La colonna question identifica la domanda a cui ci si sta riferendo; l’identificativo della domanda deve corrispondere a quello indicato nella colonna question del foglio info.
recid | question | verbatim | cod1 | cod2 | cod3 |
---|---|---|---|---|---|
1234 | q1 | bla bla bla | 1 | 2 | |
1235 | q1 | bla bla bla | 4 | ||
1235 | q2 | bla | 1 | ||
1236 | q1 | bla bla bla | 12 | ||
1237 | q1 | bla bla bla | 14 | 15 | |
1237 | q2 | bla | 5 | ||
1238 | q2 | bla | 7 | ||
1239 | q1 | bla bla bla | 6 | 3 | 13 |
1240 | q2 | bla | 5 | ||
... |
Oltre alle colonne descritte, è possibile inserire anche ulteriori colonne che verranno ignorate dalla procedura di codifica. Le colonne contenente le verbalizzazioni possono essere omesse.
info¶
Il foglio info contiene i metadati necessari per interpretare la struttura della codifica e per attribuire i codici al file di dati.
Le intestazioni delle colonne non possono essere modificate:
- id: il nome della variabile che identifica il record. Va specificato solo per la prima riga (si riferisce alla struttura generale della tabella). Il nome della variabile deve essere lo stesso tra il file di codifica e il file di dati.
- format: il formato della tabella contenete la codifica: wide o long. Va specificato solo per la prima riga (si riferisce alla struttura generale della tabella)
- question: il nome della question. Nel formato long deve corrispondere al contenuto della colonna question.
- type: il tipo di variabile: s singola o m multipla
- column: il nome (per le singole) o la radice del nome (per le multiple) delle colonne che contengono la codifica. Nel formato long va indicato solo per il primo record (la codifica utilizza le stesse colonne per tutte le domande)
- var: il nome (per le singole) o la radice del nome (per le multiple) delle variabili del file di dati se diverse da quanto indicato nella colonna question
- into: il nome (per le singole) o la radice del nome (per le multiple) delle nuove variabili che verrnno creata con la codifica.
- other: per le multiple specifica i codici altro che devono essere “spenti” in seguito alla codifica (separare eventuali altri codici con una virgola)
- uniq: per le multiple specifica i codici esclusivi (separare eventuali altri codici con una virgola). Un codice esclusivo non viene inserito se sono già presenti altri codici
- recode: I codici da ricodificare. Utilizza la sintassi dell’Hash: 11=>98, 12=>99. Viene eseguito prima di offset
- offset: un numero da addizionare ai codici
- offset_start: il codice da cui partire per applicare offset (default 1)
- skip: se non vuota, la definizione viene ignorata. La colonna può non essere presente nel file.
Nella radice del nome è possibile utilizzare il carattere # per inserire il codice dell’item. Più caratteri # consecutivi permettono il padding dello zero.
Esempio per il formato wide:
id | format | question | type | column | var | into | other | uniq | skip |
---|---|---|---|---|---|---|---|---|---|
recid | wide | q1 | m | q1_cod | d1_ | x1_ | 98 | 97, 99 | |
q2 | s | q2code |
Esempio per il formato long:
id | format | column | question | type | var | into | other | uniq | skip |
---|---|---|---|---|---|---|---|---|---|
recid | long | cod | q1 | m | d1_ | x1_ | 98 | 97, 99 | |
q2 | s | v2 | x |
Attenzione
La procedura gestisce domande multiple in formato multidicotomy non multicategory.
label¶
Il foglio label è opzionale e contiene le etichette da associare alle nuove variabili e/o livelli delle variabili. Ha lo stesso formato indicato in File di dati>Metadati.
Output¶
Oltre a inserire i dati nel dataset attivo, la procedura coding genera nell’output per ciascuna variabile/domanda codificata, una tabella contenete i dati precedenti alla codifica, i dati presenti nella codifica e il risultato finale: