Visualizzazione dei dati mancanti in RW/ GGMICE

Visualizzazione dei dati mancanti in RW/ GGMICE

Quando si analizzano i dati, vogliamo conoscere i passaggi successivi su come trovare i valori mancanti perché la maggior parte delle cose nell'analisi è determinata da diversi fattori. Per aiutarti in questo, affronteremo la visualizzazione dei dati mancanti in R usando il pacchetto gmice . Puoi guardare il video completo di questo tutorial in fondo a questo blog .

"Cosa devo fare per i valori mancanti?" Questa è una domanda essenziale da porre quando si analizzano i dati. Speriamo tutti che siano facili da trovare poiché sono codificati come null o NA.

Daremo un'occhiata ad alcune regole pratiche generali e ai passaggi successivi. Impareremo come rispondere a domande come quanti dati mancanti ci sono? Quanto è grande il problema? Possiamo trovare qualche schema nei dati?

Ci sono molti modi per farlo, ma useremo la visualizzazione dei dati mancanti in R come primo inizio esplorativo.

Sommario

Quando eliminare e quando trovare i valori mancanti

Se non esiste uno schema nel modo in cui mancano e interessa meno del 5% delle osservazioni, sia nella colonna che nel set di dati, è possibile eliminare quei valori mancanti.

Tuttavia, se risulta che è più diffuso e puoi trovare alcuni modelli significativi basati sulle visualizzazioni, allora potresti dover fare qualcosa con quei dati.

Quindi, invece di lasciarli cadere, possiamo imputarli perché c'è probabilmente una storia sul perché quei valori mancano nello schema così come sono.

Visualizzazione dei dati mancanti in RW/ GGMICE

In questa demo utilizzeremo un pacchetto che imputerà i valori mancanti. Questo è un nuovo pacchetto per la visualizzazione dei dati mancanti in R e si chiama gmmice .

L'idea è di trovare il modello e quanti valori mancanti sono, quindi esamineremo il modello di trama e quindi la matrice predittiva di trama .

MICE sta per imputazione multivariata con metodi concatenati . Non stiamo entrando nella meccanica ma impareremo come questo algoritmo imputerà i nostri dati se lo usiamo.

Un'altra cosa da sapere sulla visualizzazione dei dati mancanti in R usando ggmice è che è davvero pensato per essere compatibile con ggplot2 , quindi siamo in grado di creare alcune visualizzazioni sul retro di ggplot2 , il famoso pacchetto di visualizzazione. 

Visualizzazione dei dati mancanti in RW/ GGMICE

Passaggi per visualizzare i dati mancanti in R con GGMICE

Andiamo avanti e avviamo RStudio . La prima cosa che dobbiamo fare è importare tutti i pacchetti di cui abbiamo bisogno digitando i set di dati library (ggmice) , library (tidyverse) che include ggplot2 e library (Ecdat) .

Il pacchetto della libreria (Ecdat) ha molti buoni set di dati su cui esercitarsi. Ecco perché lo stiamo usando e importando.

Visualizzazione dei dati mancanti in RW/ GGMICE

Uno dei set di dati è help (MCAS) . Eseguiamo la funzione di aiuto su questo.

Come possiamo vedere, questo proviene da Ecdat ed è un set di dati sui punteggi dei test. Questa documentazione di aiuto descrive ciascuna delle colonne e ci dice da dove proviene.

Useremo questo per sapere se ci sono dati mancanti e quale modello formano se ce n'è uno.

Visualizzazione dei dati mancanti in RW/ GGMICE

Usiamo is.na (MCAS) e facciamo clic su Esegui . Come possiamo vedere, ci sono un mucchio di VERO e FALSO. Quello che possiamo fare è sommarli usando la funzione colSums (is.na(MCAS)) perché FALSE e TRUE sono zero e uno sotto mentite spoglie. Questo è il nostro modo per verificare se il valore è mancante o meno.

Visualizzazione dei dati mancanti in RW/ GGMICE

Come mostrato di seguito, i valori mancanti si trovano in tre colonne come spc , totsc8 e avgsalary . Possiamo vedere la descrizione di queste colonne nella sezione della documentazione di aiuto.

Visualizzazione dei dati mancanti in RW/ GGMICE

Inoltre, utilizzando colSums (is.na(MCAS)) / nrow (MCAS) il numero di righe si trasformerà in percentuale. Questo è un modo per vederlo, ma non la cosa più facile da fare.

Visualizzazione dei dati mancanti in RW/ GGMICE

In questo caso, diamo un'occhiata a cosa può fare per noi ggmice. Useremo la funzione browseVignettes (package = 'ggmice') , quindi faremo clic su Esegui .

Visualizzazione dei dati mancanti in RW/ GGMICE

Sono state trovate alcune vignette per questa funzione, quindi scegliamo ggmice e facciamo clic sul collegamento HTML per vedere alcuni tutorial utili che potrebbero essere d'aiuto.

Visualizzazione dei dati mancanti in RW/ GGMICE

Visualizzazione dei dati mancanti in RW/ GGMICE

Tornando allo script, usiamo la funzione plot_pattern (MCAS) per passare il set di dati.

Visualizzazione dei dati mancanti in RW/ GGMICE

Per visualizzarlo meglio, fai clic sul pulsante Zoom . Come illustrato, su 155 osservazioni, spc ha 9 valori mancanti, 25 per avgsalary e 40 per totsc8 .

Cercheremo di scoprire se qualcuno di questi coincide, quanti ce ne sono e se tendono ad essere in un cluster.

Visualizzazione dei dati mancanti in RW/ GGMICE

Per eseguire un controllo incrociato, possiamo provare in modo analogico utilizzando la funzione view (MCAS) e quindi facendo clic su Run .

Visualizzazione dei dati mancanti in RW/ GGMICE

Questo è una specie di visualizzatore di fogli di calcolo in cui possiamo vedere tutti i valori mancanti. Possiamo anche espanderlo facendo clic sul pulsante Editor sorgente .

Visualizzazione dei dati mancanti in RW/ GGMICE

Simile a Power Query , possiamo vedere le voci totali e gli NA sono i valori mancanti. È evidente che le voci totali nella vista (MCAS) sono 220 e solo 155 per plot_pattern (MCAS) perché probabilmente c'erano valori completi che non sono stati tracciati di per sé.

Inoltre, possiamo vedere che tendono a raggrupparsi insieme in base alle variabili e alle righe. Tuttavia, in molti casi, manca solo l'uno o l'altro. La realtà è che è difficile eseguire questa visualizzazione riga per riga, quindi è qui che entra in gioco la visualizzazione.

Visualizzazione dei dati mancanti in RW/ GGMICE

Imputazione dei dati mancanti

La prossima cosa da fare è tornare al nostro script, quindi digitare nrow (MCAS) e quindi sum(is.na(MCAS)$totsc8)) .

In questo caso, sappiamo che 40 valori mancanti su 200 osservazioni. Usiamo R come calcolatrice mettendo 40/200. Pertanto, abbiamo circa il 20% di valori mancanti, il che è molto.

Idealmente, vogliamo sapere perché ne mancano così tanti. Forse è solo il modo in cui sono stati raccolti i dati, motivo per cui possiamo imputarlo.

Visualizzazione dei dati mancanti in RW/ GGMICE

Per farlo, importiamo il pacchetto library (mouse) . Questo è uno dei metodi di imputazione.

Visualizzazione dei dati mancanti in RW/ GGMICE

Quindi, usiamo le funzioni MCAS_pred < –="" quickpred=""> e plot_pred(MCAS_pred) . Assicurati di salvarli, fai clic su Esegui e fai clic sul pulsante Zoom .

Visualizzazione dei dati mancanti in RW/ GGMICE

Se dobbiamo utilizzare l'imputazione multivariata, questo algoritmo troverà osservazioni e punti dati simili a quelli mancanti, quindi tenterà di inserirli.

Ad esempio, le colonne spc . Questi saranno utili per prevedere i valori mancanti stessi con totsc8 e avgsalary . A questo punto, non lo stiamo facendo, ma stiamo vedendo quali valori e variabili sono correlati che potrebbero essere utili per ostacolare quei valori.

Visualizzazione dei dati mancanti in RW/ GGMICE

Proviamo un'altra cosa. Utilizzeremo ggmice (MCAS, aes(x=avgsalary, y=totsc8)) + geom_point ( ) , quindi fare clic su Esegui .

Questo è un grafico a dispersione , tranne per il fatto che stiamo usando ggmice. Fondamentalmente, l'idea è che possiamo vedere la relazione tra queste due variabili che hanno parecchi valori mancanti. Quando uno di essi manca e l'altro è disponibile, possiamo vedere dove si trovano quei punti.

In questa situazione, entrambi sono osservati in uno di questi casi. Uno manca e l'altro no. Se mancano entrambi, non sarà sulla trama.

Visualizzazione dei dati mancanti in RW/ GGMICE


Modificare i dati in R utilizzando il pacchetto DataEditR
Best practice per Power Query per il modello di dati
Come installare i pacchetti R in LuckyTemplates

Conclusione

Quando lavoriamo con valori mancanti, si è tentati di utilizzare un algoritmo come MICE perché è molto potente per attribuire valori. Tuttavia, è meglio esplorare i dati da soli e capire cosa sta succedendo.

Idealmente, se abbiamo molti dati mancanti, vogliamo capire perché e forse possiamo provare a ottenere altri dati o imputarli. Andare direttamente alla fonte è sempre preferibile.

Se finiamo per voler imputare i valori mancanti, possiamo fare alcuni semplici metodi di imputazione con il pacchetto tidyverse come la media o la mediana.

Senza dubbio, il pacchetto MICE è potente. Può essere eccessivo per cose che sono molto intensive dal punto di vista computazionale, ma in questo momento ci concentriamo solo sull'elemento di visualizzazione.

Spero che tu impari qualcosa e sentiti libero di usare questo pacchetto. Assicurati di condividerlo e cerca di spargere la voce perché è un bel pacchetto per lavorare con valori mancanti compatibili con ggplot2.

Ti auguro il meglio,

Giorgio


Power Automate si applica a ogni azione nei flussi di lavoro

Power Automate si applica a ogni azione nei flussi di lavoro

Scopri l

Tecniche di modellazione dei dati per organizzare le misure DAX

Tecniche di modellazione dei dati per organizzare le misure DAX

Tecniche di modellazione dei dati per organizzare meglio le misure DAX per un flusso di lavoro più efficiente.

Filtro Power Apps: cosè e come si usa?

Filtro Power Apps: cosè e come si usa?

Scopri come utilizzare la funzione di filtro in Power Apps e come incorporarla nelle formule esistenti all

Come commentare più righe in Python: una guida semplice e veloce

Come commentare più righe in Python: una guida semplice e veloce

Come commentare più righe in Python: una guida semplice e veloce

Connettori Power Automate: numero, testo e data e ora

Connettori Power Automate: numero, testo e data e ora

Acquisisci familiarità con i connettori Power Automate per la manipolazione di numeri, testo e date/ore.

Budget Vs Actual Vs Last Year - Suggerimenti per la rendicontazione finanziaria

Budget Vs Actual Vs Last Year - Suggerimenti per la rendicontazione finanziaria

Ora, è molto facile studiare il budget rispetto all

Come salvare e caricare un file RDS in R

Come salvare e caricare un file RDS in R

Imparerai come salvare e caricare oggetti da un file .rds in R. Questo articolo tratta anche come importare oggetti da R a LuckyTemplates.

Che cosè Power Query e M Language: una panoramica dettagliata

Che cosè Power Query e M Language: una panoramica dettagliata

Scopri tutto su Power Query e il linguaggio M per la trasformazione e la preparazione dei dati nel desktop di LuckyTemplates.

Cosè il sé in Python: esempi del mondo reale

Cosè il sé in Python: esempi del mondo reale

Cos'è il sé in Python: esempi del mondo reale

Rivisitazione dei primi N giorni lavorativi: una soluzione per il linguaggio di codifica DAX

Rivisitazione dei primi N giorni lavorativi: una soluzione per il linguaggio di codifica DAX

In questa esercitazione sul linguaggio di codifica DAX, scopri come usare la funzione GENERATE e come modificare dinamicamente il titolo di una misura.