Ci sono un’ampia varietà di Tipi di dato in R tra cui scalari, vettori (numerici, caratteri, logici), matrici, dataframe e liste.
Vettori
> a <- c(1,2,3.3,5,-2,4) # vettore numerico in R > b <- c("one","two","three") # vettore di Stringhe in R > c <- c(TRUE,TRUE,TRUE,FALSE,TRUE,FALSE) #vettore logico in R
Usando gli indici per accedere ai valori avremo
> a[c(2,4)] [1] 2 5 #Accede al 2° e al 4° elemento
Matrici e Arrays
Tutte le colonne di una matrice devono avere la stessa tipologia (numerico, carattere, ecc.) e la stessa lunghezza.
Per definire una matrice:
mymatrix <- matrix(vector, nrow=r, ncol=c, byrow=FALSE, dimnames=list(char_vector_rownames, char_vector_colnames)) vector vettore numerico di dimensione r X c nrow numero r di righe ncol numero c di colonne byrow = TRUE / FALSE elementi disposti per riga oppure per colonna dimnames etichette di riga e di colonna > y<-matrix(1:20, nrow=5,ncol=4) > y [,1] [,2] [,3] [,4] [1,] 1 6 11 16 [2,] 2 7 12 17 [3,] 3 8 13 18 [4,] 4 9 14 19 [5,] 5 10 15 20 > # un altro esempio > cells <- c(13,26,52,104) > rnames <- c("R_1", "R_2") > cnames <- c("C_1", "C_2") > mymatrix <- matrix(cells, nrow=2, ncol=2, byrow=TRUE, + dimnames=list(rnames, cnames)) > mymatrix C_1 C_2 R_1 13 26 R_2 52 104
Per accedere ai singoli valori
> y[,4] # 3° colonna della matrice [1] 16 17 18 19 20 > y[3,] # 3° riga della matrice [1] 3 8 13 18 > y[2:4,1:3] # righe 2,3,4 delle colonne 1,2,3 [,1] [,2] [,3] [1,] 2 7 12 [2,] 3 8 13 [3,] 4 9 14
Gli array sono simili alle matrici ma possono avere più di due dimensioni. Per ulteriori informazioni digita help(array).
Dataframes
Un dataframe è una lista di vettori, dove tutti hanno la stessa lunghezza,ma possono essere di tipo diverso (numerici, character, factor, etc.).
> a <- c(1,2,3,4) > b <- c("white", "white", "red", NA) > c <- c(TRUE,TRUE,FALSE,FALSE) > mydata <- data.frame(a,b,c) > names(mydata) <- c("ID","Colore","White") > mydata ID Colore White 1 1 white TRUE 2 2 white TRUE 3 3 red FALSE 4 4
FALSE
Per accedere agli elementi di un dataframe
> mydata[1:2] # colonne 3,4,5 del dataframe ID Colore 1 1 white 2 2 white 3 3 red 4 4
> mydata[c("ID","Colore")] # colonne ID e Colore Age del dataframe ID Colore 1 1 white 2 2 white 3 3 red 4 4 > mydata$ID # colonna ID del dataframe [1] 1 2 3 4
Liste
Un insieme ordinato di oggetti. Una lista elenco consente di raggruppare una varietà di oggetti (possibilmente non correlati) sotto un unico nome.
> # esempio di lista con 4 componenti > w <- list(name="RocketToRide", mynumbers=13, articolo=13) > w $name [1] "RocketToRide" $mynumbers [1] 13 $articolo [1] 13 > # esempio di lista che contiene due liste > v <- c(list1,list2)
Per accedere agli elementi di una lista
list[[2]] # 2° componente della lista list [["mynumbers "]] # componente mynumbers della lista
Factors
Factors è un tipo di dato che permette di etichettare un gruppo di osservazioni utilizzando delle categorie predefinite, memorizza i valori nominali come vettore di numeri interi nell’intervallo [1 … k] (dove k è il numero di valori univoci nella variabile nominale).
Esempio
> # variable genere with 20 "male" e > # 30 " female " > gender <- c(rep("male",20), rep("female ", 30)) > gender <- factor(gender) > # memorizza genere come 20 1s e 30 2s > # 1=female, 2=male > # R now treats gender as a nominal variable > summary(gender) female male 30 20
Funzioni utili per tutti I tipi di dato in R
Quache funzione utile per ogni tipo di dato
length(object) # numero di elementi o componenti str(object) # struttura di un oggetto class(object) # classe o tipo di oggetto names(object) # etichette object # stampa l’oggetto ls() # lista gli oggetti del workspace rm(object) # cancella un ogetto dal workspace newobject <- edit(object) # modifica copia e salva come nuovo oggetto
Guarda tutti i tutorial di Data input oppure torna su R tutorial.
Commenti recenti