





Studia grazie alle numerose risorse presenti su Docsity
Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium
Prepara i tuoi esami
Studia grazie alle numerose risorse presenti su Docsity
Prepara i tuoi esami con i documenti condivisi da studenti come te su Docsity
Trova i documenti specifici per gli esami della tua università
Preparati con lezioni e prove svolte basate sui programmi universitari!
Rispondi a reali domande d’esame e scopri la tua preparazione
Riassumi i tuoi documenti, fagli domande, convertili in quiz e mappe concettuali
Studia con prove svolte, tesine e consigli utili
Togliti ogni dubbio leggendo le risposte alle domande fatte da altri studenti come te
Esplora i documenti più scaricati per gli argomenti di studio più popolari
Ottieni i punti per scaricare
Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium
Guida introduttiva all'analisi dati con r, focalizzata su creazione e manipolazione di variabili, vettori, matrici e data frame. Illustra i comandi base per importare dati da file csv e txt, prepararli modificando e creando colonne, e unire tabelle. Include esempi ed esercizi per l'apprendimento, coprendo statistiche descrittive e selezione di elementi nei data frame. L'obiettivo è fornire competenze per gestire e analizzare dati efficacemente con r. Strutturata in lezioni progressive, dai concetti base a tecniche avanzate di manipolazione. Presenta funzioni statistiche fondamentali come media, mediana, varianza e deviazione standard, e tecniche per creare tabelle di frequenza a una, due e tre vie per l'analisi della distribuzione dei dati.
Tipologia: Sintesi del corso
1 / 9
Questa pagina non è visibile nell’anteprima
Non perderti parti importanti!






#primi passi con R #creazioni di variabili somma<- 10.2+100. somma corso <- "informatica" corso logica <- TRUE logica #lista delle variabili ls() #rimuovere variabili rm(corso,somma) #workspace-area di lavoro getwd() #sapere la dir. di lavoro setwd("c:/tmp") #impostare la dir. di lavoro #cronologia comandi history()
#creazione di 3 vettori vettore_num <- c(1,2,3) vettore_num vettore_alfa <- c("a","b","c") vettore_alfa vettore_logico <- c(TRUE,FALSE,TRUE) vettore_logico [#analisi costi,ricavi e profitti costi<- c(100,150,90) costi ricavi <- c(110,20,90) ricavi ] #assegnazione nomi agli elementi del vettore month <-c("mese 1","mese 2","mese 3")#creazione vettore names (costi)<-month
names (ricavi)<-month costi ricavi #creazione di un vettore calcolato profitti <-ricavi-costi profitti #analisi con statistiche descrittive somma <- sum (profitti) media <- mean (profitti) mediana <- median (profitti) minimo<- min (profitti) massimo<- max (profitti) somma media mediana minimo massimo #selezione elementi #singolo elemento profitti [1] #piu elementi profitti [c(1,3)] #range profitti[1:2] #selezionare gli elementi in base a una condizione confronto<- profitti <= confronto profitti #operatori logici in R < minore di >Maggiore di <= minore o uguale >= maggiore o uguale == uguale != diverso
#creiamo una matrice
#statistiche #totali colonna colSums (vendite) #totali riga rowSums (vendite) #ampliamento della matrice #aggiunta di una colonna mese_4 <-c(461,315,773,667) vendite_all<- cbind (vendite,mese_4) vendite_all #aggiunta di una riga totali <- colSums(vendite_all) #vettore somma vendite_def <- rbind (vendite_all,totali) vendite_def #selezione di elementi vendite_def [1,2] #prima riga,seconda colonna vendite_def[,2]#seconda colonna vendite_def [3,] #terza riga
mtcars #visualizza le prime 6 righe di un data frame head (mtcars) #prime n osservazioni head (mtcars, n=10) #ultime n osservazioni tail (mtcars, n=3) #PARTE DESCRITTIVA str (mtcars) #nb 32 obs=righe, 11 variables=colonne ecc #CREAZIONE DI UN DATA FRAME ESERCIZIO
# creazione vettori nome <- c("Mercury", "Venus", "Earth", "Mars", "Jupiter", "Saturn", "Uranus", "Neptune") tipo <- c("T", "T", "T", "T", "G", "G", "G", "G") diametro <- c(0.382, 0.949, 1, 0.532, 11.209, 9.449, 4.007, 3.883) #creazione del data frame a partire dai vettori pianeti<- data.frame (nome,tipo,diametro) pianeti #per controllare se giuste colonne e righe e il loro tipo str (pianeti) #dimensione: righe colonne; righe; colonne dim (pianeti) nrow (pianeti) ncol (pianeti) #visualizzazione dei nomi di colonne names(pianeti) #modifica nomi colonna names (pianeti)<- c( "name", "type", "diameter") pianeti #aggiunta di una colonna # creazione vettore ring <- c( FALSE, FALSE, FALSE, FALSE,TRUE,TRUE,TRUE,TRUE) #unire al data frame il vettore creato pianeti_def <- cbind (pianeti, ring) pianeti_def #visualizzazione di una COLONNA(importante),come se fosse VETTORE A SE STANTE pianeti_def $ diameter #modifica valori di una colonna pianeti_def$diameter <- pianeti_def$diameter + 0. pianeti_def #statistiche descrittive mean(pianeti_def$diameter) median(pianeti_def$diameter) min(pianeti_def$diameter) max(pianeti_def$diameter)
orders #fase 2 -preparazione dati
orders$AMOUNT<- orders$AMOUNT+ orders$SHIPPING<-orders$SHIPPING-0. orders #CREAZIONE DI NUOVE COLONNE/VARIABILI CALCOLATE orders$TOTAL_AMOUNT<-orders$AMOUNT + orders$SHIPPING orders #funzioni troncamento orders$TOTAL_AMOUNT_CEILING<- ceiling(orders$TOTAL_AMOUNT) orders$TOTAL_AMOUNT_FLOOR<-floor(orders$TOTAL_AMOUNT) orders$TOTAL_AMOUNT_TRUNC<-trunc (orders$TOTAL_AMOUNT) orders$TOTAL_AMOUNT_ROUND<-round(orders$TOTAL_AMOUNT,digits=1) #arrotonda decimale orders #funzioni alfanumeriche orders$PRODUCTID<-tolower(orders$PRODUCTID) orders$ORDERID_NEW <- substr(orders$ORDERID,2,4) orders #funzioni statistiche mean(orders$TOTAL_AMOUNT_ROUND) median(orders$TOTAL_AMOUNT_ROUND) range(orders$TOTAL_AMOUNT_ROUND) sum(orders$TOTAL_AMOUNT_ROUND) min(orders$TOTAL_AMOUNT_ROUND) max(orders$TOTAL_AMOUNT_ROUND) #SELEZIONE COLONNE DI INTERESSE #eliminare colonne(dropping) drop <- c(-9)#voglio eliminare colonna 9 orders_new <- orders[,drop] #metto virgola per far capire che voglio lavorare con colonne orders_new #selezione osservazioni di interesse #nb.per vedere gli ordini new,il cui importo arrotondato è maggiore di 1200 orders_def <- subset(orders_new,TOTAL_AMOUNT_ROUND > 1200) orders_def
#FASE 1 -importazione dati orders<-read.csv("c:/tmp/ORDERS.CSV", sep=";",stringsAsFactors=FALSE) orders customers<-read.csv("c:/tmp/CUSTOMERS.CSV", sep=";",stringsAsFactors=FALSE) customers customers_new<-read.csv("c:/tmp/CUSTOMERS_NEW.CSV", sep=";",stringsAsFactors=FALSE) customers_new #FASE 2 -preparazione dati, unire tabelle con 2 colonne uguali(guarda su ppt se 3 colonne) #UNIONE orders_customers<-merge(orders,customers,by="CUSTOMERID") orders_customers #CONCATENAZIONE customers_total<-rbind(customers, customers_new) customers_total #FASE 3-statistica descrittiva #indici di posizione mean(orders_customers$AMOUNT) median(orders_customers$AMOUNT) quantile(orders_customers$AMOUNT) mean(orders_customers$AGE) median(orders_customers$AGE) quantile(orders_customers$AGE) #indici di dispersione range(orders_customers$AMOUNT) var(orders_customers$AMOUNT) sd(orders_customers$AMOUNT) range(orders_customers$AGE) var(orders_customers$AGE) sd(orders_customers$AGE) summary(orders_customers) #distribuzione di frequenza #a una via