Valori mancanti¶
Consiglio
Oltre alle procedure elencate in questa pagina counts è un’utile funzione per controllare la presenza di dati mancanti.
missings¶
missings genera un report relativo ai valori mancanti.
Il report mostra il numero di missing presente in ciascuna variabile e le occorrenze delle combinazioni di missing tra le variabili. Ogni colonna è un modello diverso di combinazione dei missing nelle variabili. Sono inoltre indicati il numero di valori mancanti complessivo e il numero di record che presenta la specifica combinazione di valori mancanti.
Importante
Se è attivo un filtro, missings analizza solo i casi attivi.
Parametri:
- :varname|varlist: la variabile o la lista delle variabili che si si vuole includere nel report
- :sort => :file|:varname|:nmiss: ordinamento delle variabili nella tabelella dell’output: :file (default) l’ordine in cui sono presenti le variabili nel file di dati; :varname ordine alfabetico dei nome delle variabili; :nmiss ordinati sul numero di casi mancanti trovati
- :filled => :keep|:drop: :keep (default) include nell’output anche le variabili senza valori mancanti; :drop esclude le variabili senza valori mancanti
- :xlsx => filename: nome del file xlsx (senza estensione) in cui salvare l’output
1 | missings :sort => :nmiss, :xlsx => "nmiss"
|
> Missing patterns: 6 combinations
+---------+----------+-------+------+------+------+------+------+
| varname | n. miss. | records |
+---------+----------+-------+------+------+------+------+------+
| | 267 | 250 | 21 | 20 | 4 | 4 | 1 |
+---------+----------+-------+------+------+------+------+------+
| | 3.9% | 83.3% | 7.0% | 6.7% | 1.3% | 1.3% | 0.3% |
+---------+----------+-------+------+------+------+------+------+
| d5 | 30 | - | X | - | X | X | X |
| d7_1 | 25 | - | - | X | - | X | X |
| d7_2 | 25 | - | - | X | X | - | X |
| d7_3 | 21 | - | - | X | - | - | X |
| d7_4 | 21 | - | - | X | - | - | X |
| d7_5 | 21 | - | - | X | - | - | X |
| d7_6 | 21 | - | - | X | - | - | X |
| d7_7 | 21 | - | - | X | - | - | X |
| d7_8 | 21 | - | - | X | - | - | X |
| d7_9 | 21 | - | - | X | - | - | X |
| d7_10 | 20 | - | - | X | - | - | - |
| n7 | 20 | - | - | X | - | - | - |
| ser_no | 0 | - | - | - | - | - | - |
| area | 0 | - | - | - | - | - | - |
| sesso | 0 | - | - | - | - | - | - |
| etaq | 0 | - | - | - | - | - | - |
| eta | 0 | - | - | - | - | - | - |
| titolo | 0 | - | - | - | - | - | - |
| prof | 0 | - | - | - | - | - | - |
| dc | 0 | - | - | - | - | - | - |
| d1 | 0 | - | - | - | - | - | - |
| d2 | 0 | - | - | - | - | - | - |
| peso | 0 | - | - | - | - | - | - |
+---------+----------+-------+------+------+------+------+------+
donor (Donor imputation)¶
IN SVILUPPO
donor sostituisce i valori mancanti in un record con dei valori osservati in altri record. I record da cui vengono presi i valori sono definiti donors (donatori).
I valori imputati sono sempre valori realmente esistenti e non valori stimati. Inoltre i valori imputati in un record provengono da un unico donatore. Scegliendo in modo appropriato le variabili (:by) che definiscono i gruppi (profili) in cui scegliere i donatori, è possibile un’imputazione multivariata dei valori mancanti che non introduce inconsistenza tra i valori delle diverse variabili.
I record da imputare sono tutti quelli che presentano almeno un valore mancante nelle variabili da imputare (:missing => :partial) o tutti valori mancanti nelle variabili da imputare (:missing => :complete).
I record donatori vengono definiti dalla mancanza di valori mancanti nelle variabili da imputare oppure quelli identificati da una variabile (:donors => {:varname => value|[valuelist]).
La procedura non viene eseguita se (:recycle => true) non ci sono donatori per un profilo o se (:recycle => false) i donatori sono in numero inferiore ai record da imputare.
Importante
Se è attivo un filtro, donor processa solo i casi attivi.
Parametri:
- :varname|varlist: la variabile o la lista delle variabili con i valori mancanti da imputare
- :by => :varname|[varlist]: la variabile o la lista delle variabili che definiscono i profili dei record per l’estrazione dei donatori. Se non definita, tutte le osservazioni vengono considerate in un unico gruppo/profilo
- :missing => :partial|:complete: (default :complete) definisce se i record da imputare debbano avere solo valori mancanti nelle variabili da imputare (:complete), o possano avere anche alcuni valori validi (:partial)
- :valid => :partial|:complete: (default :complete) definisce se i record donatori debbano avere solo valori validi nelle variabili da imputare (:complete), o possano avere anche alcuni valori mancanti (:partial). E’ ignorato se definito :donors
- :recycle => true|false: (default true) definisce se i donatori possono essere riutilizzati nel caso siano di numerosità inferiore ai record da imputare
- :lowdonor => :error|:skip: quando i donatori sono troppo pochi o nessuno per un profilo, :error (default) genera un errore, :skip non fa nessuna imputazione per quel profilo
- :overwrite => true|false: (default false) definisce se l’eventuale valore presente in una variabile debba essere sovrascritto dal valore del donatore
- :iflag => true | :varname | [:varname, value] | {:varname => value}: il nome e il valore di una variabile per identificare i record imputati. true equivale a :flag_donor => 1
- :dflag => :varname: il nome di una variabile per identificare i record donatori. Il valore inserito rappresenta il numero di volte in cui è stato utilizzato il donatore
- :id => :varname|{:varname => :idname}: genera una una variabile con l’id del dotatore. Indicando :varname viene inserito in :varname il numero di record; con {:varname => :idname} viene riportato in :varname il valore di :idname
- :ws => :name: il nome del workspace che contiene il dataset da utilizzare come donatore Se non specificato, è lo stesso dataset attivo in cui si imputano i dati
- :donors => {:varname => value|[valuelist]: una variabile e il valore o la lista di valori che identificano i record donatori
- :seed => number: un seed per replicare i risultati
:missing e :valid non possono essere definiti entrambi :partial se provengono dallo stesso dataset.
1 | donor :v1, :v2, :by => [:sesso, :area], :iflag => :imputated, :id => {:id_donor => :ser_no}
|
L’istruzione donor genera una tabella con il riepilogo dei valori dei parametri principali e una tabella con una riga per ciascun profilo con:
- il numero totale dei record
- il numero dei record con valori mancanti su almeno una delle variabili indicate
- il numero di donatori disponibili
- il rapporto tra donatori e destinatari
- il numero di record imputati
- il numero di valori imputati
- il numero di donatori impiegati
> Donor Imputation
+-------------------+-----------------+
| Param | Value |
+-------------------+-----------------+
| Active filter | campio=1 |
+-------------------+-----------------+
| Missing variables | v1, v2 |
| Profiles | sesso, area |
| Donors ds | <active> |
| Missing records | partial missing |
| Donor records | all valid |
| Recycle donors | true |
| Overwrite values | false |
+-------------------+-----------------+
+---+---------+----+---------+-----------+-------+-----------+-----------+--------+---------+
| # | Profile | n. | Missing | Available | ratio | Imputated | Imputated | Used | Skipped |
| | | | records | donors | | records | values | donors | |
+---+---------+----+---------+-----------+-------+-----------+-----------+--------+---------+
| 1 | 1, 1 | 3 | 2 | 1 | 0.5 | 2 | 4 | 1 | |
| 2 | 2, 1 | 4 | 1 | 3 | 3.0 | 1 | 1 | 1 | |
+---+---------+----+---------+-----------+-------+-----------+-----------+--------+---------+