######################################################################## # CREARE OGGETTI CHE SERVONO PER I CALCOLI SUCCESSIVI (eseguire tutto) ######################################################################## A<-"mela" a<-10.6 b<-c(1,2,5,7) tex<-c("pera","banana","kiwi") d<-c(a,b) vex<-c(tex,A) AA<-c(18:11) BB<-rep(9.2,8) Cx<-seq(-2.5,8.5,0.5) Dx<-c(rep(c(1,3),2),2.5,seq(-1,1,0.2),4:2) ############################################################## # Aritmetica con i VETTORI ############################################################## #Vedere il "contenuto" dell'oggetto d #Moltiplicare per un numero d*2 #Moltiplicare per una variabile d*a #Moltiplicare per un altro vettore (di stessa lunghezza) d*AA[1:5] #elevamento al quadrato d^2 ############################################################## # Funzioni statistiche su VETTORI ############################################################## #valore minimo min(d) #valore massimo max(d) #somma degli elementi sum(d) #media mean(d) #mediana median(d) # 1° quartile quantile(d, probs = 0.25) # 3° quartile quantile(d, probs = 0.75) # Calcolare la varianza var(d) # Calcolare la deviazione standard sd(d) ############################################################## # Individuare l'indice di POSIZIONE di elementi secondo criteri ############################################################## #Individuare l'indice di POSIZIONE degli elementi "uguali a" o #"maggiori di" o "minori di", ecc... which(d==2) which(d!=1) which(d>3) which(d<5) which(d>3&d<7) which(d<3|d>7) ############################################################## # # MATRICI # ############################################################## #Per generare una matrice č possibile "appaiare" dei vettori #come se fossero colonne (i vettori devono avere stessa lunghezza): Mtx<-cbind(d[1:5],Cx[16:20],Dx[4:8]) #Vedere il "contenuto" dell'oggetto Mtx ############################################################## # Attributi delle MATRICI ############################################################## #Numero di colonne ncol(Mtx) #Numero di righe nrow(Mtx) #Dimensioni di una matrice (righe, colonne) dim(Mtx) #Verificare la classe di una matrice class(Mtx) #Verificare il tipo di valori presenti in una matrice mode(Mtx) #Nomi delle intestazioni di colonna colnames(Mtx) #Nomi delle intestazioni di riga rownames(Mtx) #Assegnare dei nomi alle intestazioni di riga rownames(Mtx)<-c("c1","c2","c3","c4","c5") #Assegnare dei nomi alle intestazioni di colonna colnames(Mtx)<-c("Var1","Var2","Var3") #Vedere il "contenuto" dell'oggetto Mtx ############################################################## # Individuare elementi delle MATRICI ############################################################## #Individuare un elemento Mtx[4,3] #Individuare una riga Mtx[3,] #Individuare una colonna Mtx[,2] #Individuare pių di una riga Mtx[c(1,4),] Mtx[4:5,] #Individuare pių di una colonna Mtx[,c(1,3)] Mtx[,1:2] #Individuare un sottoinsieme di elementi Mtx[2:4,2:3] ############################################################## # # DATAFRAME # ############################################################## #Per generare un dataframe č possibile "appaiare" dei vettori #come se fossero colonne (i vettori devono avere stessa lunghezza # e possono contenere sia numeri che testo): Dtf<-data.frame(vex,b,AA[3:6],Dx[1:4]) #Vedere il "contenuto" dell'oggetto Dtf ############################################################## # Attributi dei DATAFRAME ############################################################## #Numero di colonne ncol(Dtf) #Numero di righe nrow(Dtf) #Dimensioni di una matrice (righe, colonne) dim(Mtx) #Verificare la classe di dataframe class(Mtx) #Osservare l'output della funzione mode per i dataframe mode(Mtx) #Nomi delle intestazioni di colonna colnames(Dtf) #Assegnare dei nomi alle intestazioni di colonna colnames(Dtf)<-c("Campione","Var1","Var2","Var3") #Vedere il "contenuto" dell'oggetto Dtf ############################################################## # Generare DATAFRAME con intestazioni di colonna predefinite ############################################################## #Cancellare il dataframe rm(Dtf) #Creare il nuovo dataframe Dtf<-data.frame(Campione=vex,Var1=b,Var2=AA[3:6],Var3=Dx[1:4]) #Vedere il "contenuto" dell'oggetto Dtf ############################################################## # Individuare elementi nei DATAFRAME ############################################################## #Individuare un elemento Dtf[2,4] #Individuare una riga Dtf[4,] #Individuare una colonna Dtf[,3] #Individuare pių di una riga Dtf[c(1,4),] Dtf[2:3,] #Individuare pių di una colonna Dtf[,c(1,3)] Dtf[,1:2] #Individuare un sottoinsieme di elementi Dtf[2:4,2:3] #ALTRO MODO di richiamare COLONNE, molto IMPORTANTE!!! Dtf$Campione Dtf$Var3 ############################################################## # Individuare elementi di un dataframe secondo criteri ############################################################## #Righe complete che soddifano la condizione per una colonna: Dtf[which(Dtf$Campione=="kiwi"),] Dtf[which(Dtf$Var3==1),] #Righe complete che soddifano pių di una condizione per colonne: Dtf[which(Dtf$Var1>2 & Dtf$Var3==3),] #Righe complete che soddifano condizioni alternative per colonne: Dtf[which(Dtf$Var1<2 | Dtf$Var1>6),]