Manipolazione dei dati in R: cos'è, variabili, utilizzo del pacchetto dplyr
Pubblicato: 2020-03-26Sommario
introduzione
A parte il personale e l'infrastruttura, i dati sono il nuovo elemento costitutivo di qualsiasi azienda. Dalle grandi aziende alle piccole industrie, i dati sono il carburante che guida le loro attività. Questi dati sono associati alle loro transazioni commerciali quotidiane, ai dati sugli acquisti dei clienti, ai dati sulle vendite, ai grafici finanziari, alle statistiche aziendali, alle campagne di marketing e molto altro. Ecco perché Tim O'Reilly, fondatore di O'Reilly Media, ha affermato che stiamo entrando in una situazione in cui i dati saranno più importanti del software.
Ma cosa fare con così tanti dati? Le aziende utilizzano questi dati per ricavare preziose informazioni sulle prestazioni aziendali. Assumono data scientist che eseguono la manipolazione dei dati in R per dare un senso a questi dati. Ad esempio, la comprensione dei dati di vendita e marketing dell'ultimo anno darà loro un'idea della loro posizione. Uno studio recente ha mostrato che il mercato dell'analisi dei dati dovrebbe valere 77,6 miliardi di dollari entro il 2023.
I data scientist vengono assunti per dare un senso a questi dati mediante un processo chiamato manipolazione dei dati.
Che cos'è la manipolazione dei dati?
La manipolazione dei dati è il processo di organizzazione dei dati per leggerli e comprenderli meglio. Ad esempio, i funzionari dell'azienda possono ottenere i dati dei clienti dai loro sistemi e registri. Per lo più, questi dati verranno archiviati nel software CRM (Customer Relationship Management) e nei fogli Excel. Ma potrebbe non essere organizzato correttamente. La manipolazione dei dati include modi per organizzare tutti questi dati, ad esempio in base all'ordine alfabetico.
I dati possono essere ordinati in base a data, ora, numero di serie o qualsiasi altro campo. Le persone nel reparto contabilità di un'azienda utilizzano i dati per determinare l'andamento delle vendite, le preferenze degli utenti, le statistiche di mercato e i prezzi dei prodotti. Gli analisti finanziari utilizzano i dati per capire come sta andando il mercato azionario, le tendenze e i migliori titoli in cui dovrebbero investire.
Inoltre, i dati del server web possono essere utilizzati per capire quanto traffico ha il sito web. In questa era tecnologica, l'IoT è un esempio di tecnologia in cui i dati provengono da sensori collegati alle macchine. Questi dati vengono utilizzati per determinare le prestazioni della macchina e se presenta difetti. La manipolazione dei dati è fondamentale nell'IoT poiché il mercato varrà 81,67 miliardi di dollari entro il 2025.
La manipolazione dei dati viene comunemente eseguita utilizzando un linguaggio di programmazione chiamato R. Facci conoscere un po' meglio il linguaggio.
Cos'è R?
Per comprendere la manipolazione dei dati in R , devi conoscere le basi di R. È un moderno linguaggio di programmazione utilizzato per l'analisi dei dati, il calcolo statistico e l'intelligenza artificiale. Il linguaggio è stato creato nel 1993 da Ross Ihaka e Robert Gentleman . Al giorno d'oggi, ricercatori, analisti di dati, scienziati e statistici usano R per analizzare, pulire e visualizzare i dati.
R ha un vasto catalogo composto da metodi grafici e statistici che possono supportare l'apprendimento automatico, la regressione lineare, l'inferenza statistica e le serie temporali. Sotto la GNU General Public License, la lingua è disponibile gratuitamente per sistemi operativi come Windows, Mac e Linux. È compatibile con la piattaforma, il che significa che il codice R scritto su una piattaforma può essere facilmente eseguito in un'altra.
R è ora considerato il principale linguaggio di programmazione per la scienza dei dati. Ma è un linguaggio completo in quanto puoi usarlo per lo sviluppo di software e per attività complicate come la modellazione statistica. Puoi sviluppare applicazioni web usando il suo pacchetto RShiny.
È un linguaggio così potente che alcune delle migliori aziende del mondo come Google e Facebook lo stanno utilizzando.
Diamo un'occhiata ad alcune delle caratteristiche più importanti di R:
- Ha CRAN (Comprehensive R Archive Network) che è un repository con più di 10.000 pacchetti R, con tutte le funzionalità richieste per lavorare con i dati
- È un linguaggio di programmazione open source . Ciò significa che puoi scaricarlo gratuitamente e persino contribuire al suo sviluppo, aggiornarne le funzionalità e personalizzarne le funzionalità esistenti
- Puoi creare visualizzazioni di alta qualità dai dati a portata di mano dalle utili librerie grafiche di R come ggplot2 e plotly
- R è un linguaggio molto veloce. Poiché è un linguaggio di programmazione interpretato , non è necessario un compilatore per convertire i programmi R in codice eseguibile, quindi uno script R viene eseguito più velocemente
- R può eseguire una varietà di calcoli complicati in un batter d'occhio, costituiti da array, frame di dati e vettori . Ci sono molti operatori per eseguire questi calcoli
- Gestisce dati strutturati e non strutturati. Sono disponibili estensioni per Big Data e SQL per la gestione di tutti i tipi di dati
- R ha una comunità in continua crescita che ha le menti più brillanti. Queste persone contribuiscono costantemente al linguaggio di programmazione sviluppando librerie e aggiornamenti
- Puoi facilmente integrare R con altri linguaggi di programmazione come Python, Java e C++. Puoi anche combinarlo con Hadoop per il calcolo distribuito
Ora che hai raccolto le basi del linguaggio di programmazione R, tuffiamoci nelle cose eccitanti!
Le variabili in R
Durante la programmazione in R o l'esecuzione di qualsiasi manipolazione dei dati in R , devi avere a che fare con le variabili. Le variabili vengono utilizzate per memorizzare dati che possono essere sotto forma di stringhe, numeri interi, interi a virgola mobile o semplicemente valori booleani. Queste variabili riservano uno spazio nella memoria per il suo contenuto. A differenza dei linguaggi di programmazione tradizionali, le variabili in R vengono assegnate insieme agli oggetti R.
Le variabili non hanno un tipo di dati, ma ottengono il tipo dell'oggetto R a cui è assegnato. Gli oggetti R più popolari sono:
- vettori
- Elenchi
- Matrici
- Matrici
- Fattori
- Frame di dati
Queste strutture di dati sono estremamente importanti per la manipolazione dei dati in R e l'analisi dei dati. Esaminiamoli un po' più in dettaglio per comprendere la manipolazione dei dati di base:
vettori
Sono le strutture dati più basilari e vengono utilizzate per i dati unidimensionali. I tipi di vettori atomici sono:
- Numero intero
- Logico
- Numerico
- Complesso
- Carattere
Quando crei un valore in R, diventa un vettore a elemento singolo di lunghezza 1. Ad esempio,
stampa(“ABC”); # vettore a elemento singolo di tipo carattere
print(10.5) # vettore a elemento singolo di tipo doppio
Gli elementi nei vettori sono accessibili usando i loro numeri di indice. Le posizioni dell'indice nei vettori iniziano da 1. Ad esempio,
t <- c(“lun”,”mar”,”mer”,”sab”)
u <- t[c(1,2,3)]
stampa(u)
Il risultato sarà “lun” “mar” “mer”
Elenchi
Questi sono oggetti in R che vengono utilizzati per contenere diversi tipi di elementi al suo interno. Questi possono essere numeri interi, stringhe e persino elenchi. Se i dati non possono essere conservati in un frame di dati o in un array, questa è l'opzione migliore. Gli elenchi possono anche contenere una matrice. Puoi creare elenchi usando il metodo list().
Utilizzare il codice seguente per creare un elenco:
list_data <- list(“Nero”, “Verde”, c(11,4,14), VERO, 31.22, 120.5)
stampa(lista_dati)
È possibile accedere agli elementi dell'elenco utilizzando gli indici dell'elenco.
print(list_data[1]) #il codice stampa il primo elemento della lista
Esempio di manipolazione dei dati con liste:
list_data[4] <- NULL # questo codice rimuove l'ultimo elemento della lista se ha 4 elementi
Leggi: R vs Python per Data Science
Matrici
Gli array sono oggetti che possono essere utilizzati per memorizzare un solo tipo di dati. I dati di più di due dimensioni possono essere archiviati in array. Per questo, devi usare la funzione array() che prende i vettori come input. Utilizza il valore nel parametro dim per creare l'array.
Ad esempio, guarda il codice seguente:
vettore_risultato <- array(c(vettoreA,vettoreB),dim = c(3,3,2))
stampa (risultato_vettoriale)
Matrici
In questi oggetti R, gli elementi sono organizzati in un layout bidimensionale. Le matrici contengono elementi di tipi atomici simili. Questi sono utili quando gli elementi appartengono a una singola classe. Le matrici con elementi numerici vengono create per i calcoli matematici. Puoi creare matrici usando la funzione matrix().
La sintassi di base per creare una matrice è riportata di seguito:
matrice(data, nrow, ncol, byrow, dimnames)
- Dati – Questo è il vettore di input che diventa l'elemento di dati per la matrice
- Nrow – Questo è il numero di righe che vuoi creare
- Ncol – Questo è il numero di colonne che vuoi creare
- Byrow – Questo è un indizio logico. Se il suo valore è TRUE, gli elementi del vettore saranno disposti per riga
- Dimname – Nomi dati alle colonne e alle righe
Fattori
Questi oggetti R vengono utilizzati per classificare i dati e archiviarli come livelli. Sono utili per la modellazione statistica e l'analisi dei dati. Sia i numeri interi che le stringhe possono essere memorizzati in fattori. È possibile utilizzare la funzione factor() per creare un fattore fornendo un vettore come input per il metodo.

Frame di dati
Ha una struttura bidimensionale come un array con righe e colonne. Qui, ogni riga ha un insieme di valori appartenenti a ciascuna colonna. Le colonne contengono il valore di una variabile. Sono usati per rappresentare i dati dai fogli di calcolo. Questi possono essere utilizzati per memorizzare dati di tipo fattoriale, numerico o carattere.
Un frame di dati ha le seguenti caratteristiche:
- I nomi delle righe devono essere univoci
- I nomi delle colonne devono essere non vuoti
- Il numero di elementi di dati in ciascuna colonna deve essere lo stesso
La manipolazione dei dati in R
Durante la manipolazione dei dati in R , il primo passaggio consiste nel creare piccoli campioni di dati da un enorme set di dati. Questo viene fatto poiché l'intero set di dati non può essere analizzato alla volta. Di solito, gli analisti di dati creano un sottoinsieme rappresentativo del set di dati. Questo li aiuta a identificare le tendenze e i modelli nel set di dati più ampio. Questo processo di campionamento è anche chiamato subsetting .
I diversi modi per creare un sottoinsieme in R sono i seguenti:
- $ – Seleziona un singolo elemento di dati e il suo risultato è sempre un vettore
- [[ – Questo operatore di sottoinsieme restituisce anche un singolo elemento, ma puoi fare riferimento agli elementi in base alla loro posizione
- [ – Questo operatore viene utilizzato per restituire più elementi di dati
Alcune delle funzioni di base per la manipolazione dei dati in R sono:
funzione sample()
Come suggerisce il nome, il metodo sample() viene utilizzato per creare campioni di dati da un set di dati più ampio. Insieme a questo comando, menzioni il numero di campioni che desideri disegnare dal set di dati o da un vettore. La sintassi di base è la seguente:
sample(x, size, replace = FALSE, prob = NULL)
x – Può essere un vettore o un set di dati di più elementi da cui deve essere scelto il campione
size – Questo è un numero intero positivo che denota il numero di elementi da selezionare
sostituisci – Può essere Vero o Falso, indipendentemente dal fatto che desideri il campionamento con o senza sostituzione
prob – È un argomento utilizzato per fornire un vettore di pesi per ottenere gli elementi del vettore che viene campionato
funzione tabella()
Questa funzione crea una tabella di frequenza che viene utilizzata per calcolare il numero di valori univoci di una particolare variabile. Ad esempio, creiamo una tabella di frequenza con il set di dati dell'iride:
tabella(iris$Specie)
Il codice scritto sopra crea una tabella che descrive i tipi di specie nel set di dati dell'iride.
duplicato()
Il metodo duplicated() viene utilizzato per identificare e rimuovere valori duplicati da un set di dati. Prende un vettore o un frame di dati come argomento e restituisce True per gli elementi duplicati. Per esempio,
duplicato(c(1,1,3))
Questo verificherà quali di questi elementi sono duplicati e restituiranno True o False.
Leggi anche : Albero decisionale in R
Manipolazione dei dati in R utilizzando il pacchetto dplyr
R fornisce un pacchetto semplice e facile da usare chiamato dplyr per la manipolazione dei dati. Il pacchetto include alcuni metodi integrati per la manipolazione, l'esplorazione e la trasformazione dei dati. Diamo un'occhiata ad alcune delle funzioni più importanti di questo pacchetto:
Selezionare()
Il metodo select() è una delle funzioni di base per la manipolazione dei dati in R . Questo metodo viene utilizzato per selezionare le colonne in R. Usandolo, puoi selezionare i dati come con il nome della colonna. Le colonne possono essere selezionate in base a determinate condizioni. Supponiamo di voler selezionare la 3a e la 4a colonna di un data frame chiamato myData , il codice sarà:
seleziona(i mieiDati,3:4)
filtro()
Questo metodo viene utilizzato per filtrare le righe di un set di dati che soddisfano criteri specifici. Può funzionare come select(), si passa prima il data frame e poi una condizione separata usando una virgola.
Ad esempio, se vuoi filtrare le colonne che hanno auto di colore rosso in un set di dati, devi scrivere:
filter(auto, colore==”Rosso”)
Di conseguenza, verranno visualizzate le righe corrispondenti.
mutare()
Puoi usare il metodo mutate() per creare nuove colonne in un set di dati preservando quelle vecchie. Queste colonne possono essere create specificando una condizione. Per esempio,
mutate(mtcars, mtcars_new_col = mpg / cyl)
In questo comando, nel dataset mtcars, viene creata una nuova colonna mtcars_new_col che contiene i valori della colonna mpg divisi per colonna cyl.
organizzare()
Viene utilizzato per ordinare le righe in ordine crescente o decrescente, utilizzando una o più variabili. Invece di applicare il metodo desc(), puoi aggiungere un simbolo meno (-) prima della variabile di ordinamento. Questo indicherà l'ordine decrescente di ordinamento. Per esempio,
organizzare(my_dataset, -Sepal.Length)
raggruppa per()
Il metodo group_by() viene utilizzato per raggruppare le osservazioni in un set di dati in base a una o più variabili.
riassumere()
La funzione summarise() è utile per determinare informazioni dettagliate sui dati come media, mediana e moda. Viene utilizzato insieme ai dati raggruppati creati da un altro metodo group_by. summarise() aiuta a ridurre più valori in valori singoli.
unisci()
Il metodo merge() combina o unisce i set di dati insieme. Questo è utile per unire insieme più fonti di dati di input.
Il metodo offre 4 modi per unire i set di dati . Sono citati di seguito:
- Join naturale : viene utilizzato per mantenere le righe che corrispondono alla condizione specificata all'interno dei frame di dati
- Join esterno completo: unisce e archivia tutte le righe di entrambi i frame di dati
- Join esterno sinistro: memorizza tutte le righe di un frame di dati A e quelle in B che corrispondono
- Right outer join: memorizza tutte le righe di un frame di dati B e quelle in A che corrispondono
rinomina_se()
Questa è una funzione che è possibile utilizzare per rinominare le colonne di un frame di dati quando la condizione specificata è soddisfatta.
rinomina_tutto()
Viene utilizzato per rinominare tutte le colonne di un frame di dati senza specificare alcuna condizione.
Guadagna corsi di scienza dei dati dalle migliori università del mondo. Unisciti ai nostri programmi Executive PG, Advanced Certificate Program o Masters per accelerare la tua carriera.
Operatore di tubi
L'operatore pipe è disponibile in pacchetti come magrittr e dplyr per semplificare il codice generale. L'operatore consente di combinare più funzioni insieme. Denotato dal simbolo %>%, può essere utilizzato con metodi popolari come summarise(), filter(), select() e group_by() durante la manipolazione dei dati in R.
Oltre a dplyr, ci sono molti altri pacchetti in CRAN per la manipolazione dei dati in R . Troverai infatti più di 7000 pacchetti per ridurre la tua codifica e anche i tuoi errori. Molti di questi pacchetti sono creati da sviluppatori esperti, quindi sei in buone mani. Questi includono:
- tabella dati
- lubrificare
- ggplot2
- lettore
- rimodellare2
- ordinato
Conclusione
Se sei un principiante nella manipolazione dei dati in R , potresti scegliere le funzioni di base integrate disponibili in R. Questi includono metodi come with(), inside(), duplicated(), cut(), table(), sample() e sort(). Ma richiedono molto tempo e sono ripetitivi. Non è un'opzione molto efficiente.
Pertanto, il modo migliore per procedere è utilizzare l'enorme numero di pacchetti in CRAN come dplyr. Questi sono super utili e rendono i tuoi programmi più efficienti.
Quale pacchetto è utile per la manipolazione dei dati in R?
Il processo di manipolazione dei dati viene utilizzato per modificare i dati disponibili e facilitarne la lettura, oltre a renderli più organizzati. Ci sono spesso molti errori e imprecisioni da parte delle macchine che hanno raccolto i dati. La manipolazione dei dati consente di rimuovere tali imprecisioni e fornire dati più accurati.
Ci sono molti modi per eseguire la manipolazione dei dati in R, come usare pacchetti come ggplot2, readr, dplyr, ecc. e usando le funzioni Base R come inside(), with(), ecc. Tuttavia, il pacchetto dplyr è considerato molto utile per la manipolazione dei dati in R. Questo pacchetto è costituito da varie funzioni che sono state create appositamente per la manipolazione dei dati e consente di elaborare i dati più velocemente rispetto agli altri metodi e pacchetti.
Qual è lo scopo del pacchetto dplyr in R?
Il pacchetto dplyr è noto per essere il migliore per la manipolazione dei dati in R con la massima efficienza. In precedenza, c'era questo pacchetto chiamato plyr, ed è stato ripetuto per formare dplyr. Ora, dplyr si concentra completamente sui frame di dati. Questo è il motivo per cui è molto più veloce, ha un'API migliore e coerente ed è anche abbastanza facile da usare.
Il pacchetto dplyr funziona per ottenere il massimo dai dati disponibili con prestazioni migliorate rispetto agli altri pacchetti di manipolazione dei dati in R.
Come puoi manipolare i dati?
Per eseguire la manipolazione dei dati, è necessario eseguire determinati passaggi in un ordine generale. Segui i passaggi seguenti:
1. In primo luogo, avrai bisogno di un database che sia stato creato da origini dati.
2. Successivamente, è necessario pulire, riorganizzare e ristrutturare i dati disponibili con la manipolazione dei dati.
3. Ora devi sviluppare un database su cui lavorerai.
4. Qui potrai unire, eliminare e modificare le informazioni disponibili.
5. Infine, analizzare i dati disponibili e generare da essi informazioni utili.