Come utilizzare la funzione cut() in r


La funzione cut() in R può essere utilizzata per tagliare un intervallo di valori in contenitori e specificare etichette per ciascun contenitore.

Questa funzione utilizza la seguente sintassi:

taglio(x, interruzioni, etichette = NULL, …)

Oro:

  • x : nome del vettore
  • pause : numero di interruzioni da effettuare o vettore dei punti di interruzione
  • etichette : etichette per i contenitori risultanti

I seguenti esempi mostrano come utilizzare questa funzione in diversi scenari con il seguente frame di dati in R:

 #create data frame
df <- data. frame (player=c('A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I'),
                 points=c(4, 7, 8, 12, 14, 16, 20, 26, 36))

#view data frame
df

  player points
1 to 4
2 B 7
3 C 8
4 D 12
5 E 14
6 F 16
7 G 20
8:26 a.m.
9 I 36

Esempio 1: taglia il vettore in base al numero di interruzioni

Il codice seguente mostra come utilizzare la funzione cut() per creare una nuova colonna denominata categoria che taglia la colonna di punti in gruppi di quattro dimensioni uguali:

 #create new column that places each player into four categories based on points
df$category <- cut(df$points, breaks= 4 )

#view updated data frame
df

  player points category
1 to 4 (3.97.12]
2 B 7 (3.97.12]
3 C 8 (3.97.12]
4 D 12 (3.97.12]
5 E 14 (12.20]
6 F 16 (12.20]
7 G 20 (12.20]
8:26 a.m. (20.28]
9 I 36 (28.36]

Poiché abbiamo specificato break=4 , la funzione cut() divide i valori nella colonna punto in gruppi di quattro dimensioni uguali.

Ecco come ha fatto la funzione cut() :

  • Per prima cosa ha trovato la differenza tra il valore più grande e quello più piccolo nella colonna dei punti (36 – 4 = 32).
  • Quindi divide questa differenza per 4 (32/4 = 8)
  • Il risultato sono quattro contenitori con una larghezza di 8 ciascuno.

Nota : l’intervallo più basso è 3,97 anziché 4 a causa della seguente funzionalità della documentazione cut() :

Quando le pause vengono specificate come un singolo numero, l’intervallo dei dati viene diviso in blocchi di pause di uguale lunghezza, quindi i limiti esterni vengono spostati dello 0,1% dall’intervallo per garantire che i valori anomali rientrino in entrambi gli intervalli di pausa.

Esempio 2: vettore di taglio basato su punti di interruzione specifici

Il codice seguente mostra come utilizzare la funzione cut() per creare una nuova colonna denominata categoria che taglia la colonna di punti in base a un vettore di punti di interruzione specifici:

 #create new column based on specific break points
df$category <- cut(df$points, breaks=c(0, 10, 15, 20, 40))

#view updated data frame
df

  player points category
1 to 4 (0.10]
2 B 7 (0.10]
3 C 8 (0.10]
4 D 12 (10.15]
5 E 14 (10.15]
6 F 16 (15.20]
7 G 20 (15.20]
8:26 a.m. (20.40)
9 I 36 (20.40]

La funzione cut() ha classificato ciascun giocatore in categorie in base al vettore specifico di breakpoint che abbiamo fornito.

Esempio 3: tagliare un vettore utilizzando punti di interruzione ed etichette specifici

Il codice seguente mostra come utilizzare la funzione cut() per creare una nuova colonna denominata categoria che taglia la colonna di punti in base a un vettore di punti di interruzione specifici con etichette personalizzate:

 #create new column based on values in points column
df$category <- cut(df$points,
                   breaks=c(0, 10, 15, 20, 40),
                   labels=c(' Bad ', ' OK ', ' Good ', ' Great '))

#view updated data frame
df

  player points category
1 A 4 Bad
2 B 7 Bad
3 C 8 Bad
4 D 12 OK
5 E 14 OK
6 F 16 Good
7 G 20 Good
8:26 A.M. Great
9 I 36 Great

La nuova colonna della categoria classifica ciascun giocatore come Cattivo, OK, Buono o Eccellente in base al valore corrispondente nella colonna dei punti .

Nota : il numero di etichette deve essere sempre inferiore di uno al numero di punti di interruzione per evitare il seguente errore:

 Error in cut.default(df$points, breaks = c(0, 10, 15, 20, 40), labels = c("Bad",: 
  lengths of 'breaks' and 'labels' differ

Risorse addizionali

I seguenti tutorial spiegano come utilizzare altre funzioni comuni in R:

Come utilizzare la funzione tabulate() in R
Come utilizzare la funzione split() in R
Come utilizzare la funzione match() in R
Come utilizzare la funzione replicate() in R

Aggiungi un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *