Cosè il sé in Python: esempi del mondo reale
Cos'è il sé in Python: esempi del mondo reale
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.
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.
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.
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.
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.
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.
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.
In questo caso, diamo un'occhiata a cosa può fare per noi ggmice. Useremo la funzione browseVignettes (package = 'ggmice') , quindi faremo clic su Esegui .
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.
Tornando allo script, usiamo la funzione plot_pattern (MCAS) per passare il set di dati.
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.
Per eseguire un controllo incrociato, possiamo provare in modo analogico utilizzando la funzione view (MCAS) e quindi facendo clic su Run .
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 .
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.
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.
Per farlo, importiamo il pacchetto library (mouse) . Questo è uno dei metodi di imputazione.
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 .
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.
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.
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
Cos'è il sé in Python: esempi del mondo reale
Imparerai come salvare e caricare oggetti da un file .rds in R. Questo blog tratterà anche come importare oggetti da R a LuckyTemplates.
In questa esercitazione sul linguaggio di codifica DAX, scopri come usare la funzione GENERATE e come modificare dinamicamente il titolo di una misura.
Questo tutorial illustrerà come utilizzare la tecnica di visualizzazione dinamica multi-thread per creare approfondimenti dalle visualizzazioni di dati dinamici nei report.
In questo articolo, esaminerò il contesto del filtro. Il contesto del filtro è uno degli argomenti principali che qualsiasi utente di LuckyTemplates dovrebbe inizialmente conoscere.
Voglio mostrare come il servizio online di LuckyTemplates Apps può aiutare nella gestione di diversi report e approfondimenti generati da varie fonti.
Scopri come elaborare le modifiche al margine di profitto utilizzando tecniche come la ramificazione delle misure e la combinazione di formule DAX in LuckyTemplates.
Questo tutorial discuterà delle idee di materializzazione delle cache di dati e di come influiscono sulle prestazioni dei DAX nel fornire risultati.
Se finora utilizzi ancora Excel, questo è il momento migliore per iniziare a utilizzare LuckyTemplates per le tue esigenze di reportistica aziendale.
Che cos'è il gateway LuckyTemplates? Tutto quello che devi sapere