Disponi, filtra e raggruppa le righe in R utilizzando Dplyr

Disponi, filtra e raggruppa le righe in R utilizzando Dplyr

Questo tutorial è una continuazione della discussione sul pacchetto dplyr . Imparerai come organizzare, filtrare e raggruppare le righe in R.

La lezione precedente era sulle operazioni di colonna. Questa volta, l'attenzione si concentrerà sulle operazioni di riga in dplyr .

Tratteremo le nozioni di base che includono l'ordinamento e il filtraggio di un set di dati e l'aggregazione e il riepilogo dei record . Per darti una panoramica su cosa aspettarti da questa lezione, pensa a una tabella pivot in MS Excel.

Sommario

Iniziare

Apri un nuovo script R in RStudio.

Analogamente alla lezione sulle operazioni sulle colonne, questa dimostrazione utilizzerà il pacchetto del set di dati Lahman . Scaricalo facendo una rapida ricerca su google.

Per portare il pacchetto Lahman in R, eseguire library (Lahman) . Per abilitare il pacchetto dplyr , esegui library (tidyverse) . Inoltre, ricorda che una best practice per le convenzioni di denominazione in R consiste nell'usare lettere minuscole, quindi assegna Teams in teams .

Disponi, filtra e raggruppa le righe in R utilizzando Dplyr

Funzioni di base per operazioni di riga

1. Disponi le righe in R

La prima operazione di riga in dpylr è arrange ( ) . Questa funzione consente di riordinare le righe. Funziona disponendo prima il data frame df e poi i campi dati.

Disponi, filtra e raggruppa le righe in R utilizzando Dplyr

Ad esempio, ordiniamo per teamID . Eseguire organizzare (team, teamID) .

Disponi, filtra e raggruppa le righe in R utilizzando Dplyr

Se vuoi che siano disposti in ordine decrescente, devi usare la funzione desc ( ) .

Ad esempio, se si desidera ordinare per anno in ordine decrescente, eseguire arrange (teams, desc(yearID)) .

Disponi, filtra e raggruppa le righe in R utilizzando Dplyr

Quando lo fai, non stai assegnando l'output ai teams . Stai solo vedendo il risultato nella console.

È anche possibile ordinare in base a più criteri. Ad esempio, se desideri ordinare per teamID e poi per yearID in ordine decrescente, devi solo eseguire questo codice:

Disponi, filtra e raggruppa le righe in R utilizzando Dplyr

Quando ordini le righe, non stai modificando i dati. I dati vengono semplicemente spostati. Nulla viene aggiunto o rimosso.

2. Filtra le righe in R

La funzione filtro ( ) aggiunge o rimuove dati in base ai criteri selezionati. Il suo codice di base è:

Disponi, filtra e raggruppa le righe in R utilizzando Dplyr

Ad esempio, prendiamo tutti i dati in cui yearID è maggiore o uguale a 2000. Seguire il formato della funzione di filtro e inserire le informazioni necessarie. Quindi, eseguilo. Non dimenticare di assegnarlo a un nuovo oggetto. In questo caso, è stato assegnato al moderno .

Disponi, filtra e raggruppa le righe in R utilizzando Dplyr

Per verificare se le righe sono state effettivamente filtrate, è possibile utilizzare la funzione dim() . Fornisce il numero di righe e colonne nel frame di dati.

Se esegui dim (teams) , vedrai che il frame di dati ha 2.955 righe e 48 colonne.

Disponi, filtra e raggruppa le righe in R utilizzando Dplyr

Se esegui la funzione dim su modern , vedrai che il numero di righe è stato ridotto a 630 mentre il numero di colonne rimane lo stesso.

Disponi, filtra e raggruppa le righe in R utilizzando Dplyr

Le righe sono state troncate perché alcuni record vanno oltre l'anno 2000.

Filtra le righe per più campi

È anche possibile filtrare le righe in base a più campi in R. Dovrai utilizzare le istruzioni AND e OR .

Ad esempio, filtriamo i team per area. In questo caso, viene creato un nuovo oggetto ohio . I criteri del filtro sono che teamID deve includere solo Cleveland AND Cincinnati.

Disponi, filtra e raggruppa le righe in R utilizzando Dplyr

È necessario utilizzare il doppio segno di uguale ( == ) per verificare l'uguaglianza. Se usi solo un segno di uguale, R lo considererà come un operatore di assegnazione. Usa la e commerciale ( & ) per rappresentare AND.

Per controllare, utilizzare la funzione dim . Vedrai che il numero di righe è 0.

Disponi, filtra e raggruppa le righe in R utilizzando Dplyr

Ciò significa che non ci sono squadre in cui entrambi hanno sede a Cleveland e Cincinnati.

Quindi, proviamo il Cleveland OR Cincinnati. L'operatore OR è rappresentato dall'operatore pipe ( | ). Quindi, tutto ciò che devi fare è sostituire la e commerciale con l'operatore pipe e quindi eseguirlo. Successivamente, eseguire nuovamente la funzione dim .

Disponi, filtra e raggruppa le righe in R utilizzando Dplyr

Vedrai che ci sono 251 righe anziché zero.

Ora cosa succede se dimentichi di usare un doppio segno di uguale e invece ne usi solo uno? Ecco cosa succede:

Disponi, filtra e raggruppa le righe in R utilizzando Dplyr

RStudio mostrerà un messaggio di errore molto utile nella console che ti ricorda di usare il doppio segno di uguale.

3. Raggruppa per e riassumi le righe in R

La funzione raggruppa per ( ) consente di aggregare i record in base alle colonne selezionate e quindi, in base a tale aggregazione, riepilogare un'altra colonna.

La funzione raggruppa per ( ) segue questo algoritmo:

Disponi, filtra e raggruppa le righe in R utilizzando Dplyr

Ad esempio, raggruppiamo per teamID e assegniamolo a un nuovo oggetto. In questo caso, il nuovo oggetto si chiama teams_ID . Quindi, stampalo.

Disponi, filtra e raggruppa le righe in R utilizzando Dplyr

Nella console, noterai che la prima riga dice che è un tibble .

Disponi, filtra e raggruppa le righe in R utilizzando Dplyr

Un tibble è un miglioramento tidyverse rispetto al frame di dati di base. È una funzionalità nel pacchetto che aumenta e migliora ciò che è disponibile immediatamente.

La seconda riga è Gruppi . Quindi, i dati sono ora raggruppati in base alla colonna teamID.

Disponi, filtra e raggruppa le righe in R utilizzando Dplyr

E con ciò, ora puoi utilizzare la funzione di riepilogo ( ) su quei gruppi.

Disponi, filtra e raggruppa le righe in R utilizzando Dplyr

Nota: la funzione di riepilogo può essere con una s o una z e dipenderà dall'uso dell'inglese britannico o americano.

Ad esempio, riepiloghiamo teams_ID e otteniamo alcune statistiche di riepilogo di base. Cerchiamo la media, il minimo e il massimo delle vittorie per ogni squadra. Ricorda di evidenziare l'intero codice prima di scegliere Run .

Disponi, filtra e raggruppa le righe in R utilizzando Dplyr

Puoi quindi vedere nella console che viene visualizzato un riepilogo delle statistiche di ogni squadra. Questo è molto simile a una tabella pivot in cui aggreghi e riepiloghi i dati.


Frame di dati in R: apprendere le nozioni di base
Livelli di fattore in R: utilizzo di variabili categoriche e ordinali
Aggiungi, rimuovi e rinomina colonne in R utilizzando dplyr

Conclusione

Ricapitolando, sono state discusse due operazioni in dplyr. Un'esercitazione precedente si è concentrata sulle operazioni di colonna. Nel frattempo, questa lezione attuale ti ha mostrato come eseguire operazioni sulle righe usando il pacchetto dplyr in RStudio. Nello specifico, hai imparato come disporre, filtrare e raggruppare le righe in R.

La prossima cosa da imparare è come combinare queste due operazioni. L'utilizzo di tutte le funzioni che hai imparato finora ti sarà di grande aiuto nella creazione di codici in R. Tuttavia, una tecnica più utile sarebbe una pipeline. Questo aiuterà tutto a fluire insieme. Quindi, assicurati di rivedere anche i prossimi tutorial.


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

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 blog tratterà anche come importare oggetti da R a LuckyTemplates.

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.

Mostra approfondimenti utilizzando la tecnica di visualizzazione dinamica multi-thread in LuckyTemplates

Mostra approfondimenti utilizzando la tecnica di visualizzazione dinamica multi-thread in LuckyTemplates

Questo tutorial illustrerà come utilizzare la tecnica di visualizzazione dinamica multi-thread per creare approfondimenti dalle visualizzazioni di dati dinamici nei report.

Introduzione al filtraggio del contesto in LuckyTemplates

Introduzione al filtraggio del contesto in LuckyTemplates

In questo articolo, esaminerò il contesto del filtro. Il contesto del filtro è uno degli argomenti principali che qualsiasi utente di LuckyTemplates dovrebbe inizialmente conoscere.

I migliori suggerimenti per lutilizzo delle app nel servizio online LuckyTemplates

I migliori suggerimenti per lutilizzo delle app nel servizio online LuckyTemplates

Voglio mostrare come il servizio online di LuckyTemplates Apps può aiutare nella gestione di diversi report e approfondimenti generati da varie fonti.

Analizza le variazioni del margine di profitto nel tempo: analisi con LuckyTemplates e DAX

Analizza le variazioni del margine di profitto nel tempo: analisi con LuckyTemplates e DAX

Scopri come elaborare le modifiche al margine di profitto utilizzando tecniche come la ramificazione delle misure e la combinazione di formule DAX in LuckyTemplates.

Idee di materializzazione per cache di dati in DAX Studio

Idee di materializzazione per cache di dati in DAX Studio

Questo tutorial discuterà delle idee di materializzazione delle cache di dati e di come influiscono sulle prestazioni dei DAX nel fornire risultati.

Reporting aziendale tramite LuckyTemplates

Reporting aziendale tramite LuckyTemplates

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

Che cosè il gateway LuckyTemplates? Tutto quello che devi sapere

Che cos'è il gateway LuckyTemplates? Tutto quello che devi sapere