Estratto del documento

R studio: Analisi dei dati e data mining

Appunti sul corso della professoressa Maria Felice Arezzo

A cura di Mario Giorno - (MANIMP 2021-2022)

Lezione 1: 17/03/2022

Creare una directory

  • Per creare una directory bisogna andare nella sezione Files e cliccare sui 3 puntini:
  • Si aprirà una nuova finestra dove bisognerà decidere dove creare la nuova cartella che sarà la directory di riferimento.

Supponiamo di aver chiamato la cartella “Esercitazioni R-Studio” e una volta creata bisogna cliccare sul pulsante “Open”. Apparirà questa scritta che mostra che mi trovo all’interno della cartella “Esercitazioni R-Studio”.

  • Per dire al programma R-Studio che dovrà salvare tutto il risultato del mio lavoro, bisogna cliccare sul pulsante “More” e selezionare la voce “Set As Working Directory”.
  • Facendo ciò nella console si genererà questo comando:
    > setwd("C:/Users/giorn/Desktop/MARIO MANIMP/2° SEMESTRE/ANALISI DEI DATI E DATA MINING/ESERCITAZIONI R-STUDIO")
  • Inoltre, per controllare che effettivamente siamo nella directory giusta basta dare questo comando:
    > getwd e premere invio.

File di script

  • Per evitare di scrivere sempre questo comando:
    > setwd("C:/Users/giorn/Desktop/MARIO MANIMP/2° SEMESTRE/ANALISI DEI DATI E DATA MINING/ESERCITAZIONI R-STUDIO"), c’è uno strumento molto comodo, il cosiddetto file di script o di sintassi.
  • Un modo per crearlo è andare nella sezione “File”, selezionare “New File” e poi selezionare “R Script”:
  • A questo punto basta copiare il comando e incollarlo nel file: questo mi permette di velocizzare le mie operazioni. Infatti, posso ad esempio settare la directory cliccando semplicemente sul pulsante “→ Run”. Questo lo posso fare per eseguire tutti i comandi che scrivo in questa sezione.

Commentare i comandi

  • È utile commentare i comandi al fine di capire subito il loro utilizzo. Per farlo basta utilizzare il #cancelletto.
  • Ad esempio, commentiamo il comando della directory in questo modo:
    #Definisce la directory di lavoro

Salvare file script

  • Per salvare il file script basta cliccare sul simbolo del floppy disk e nominare il file script nella cartella appropriata.

Creare un oggetto

  • Per creare qualsiasi cosa bisogna scrivere i comandi nella “Console”.
  • Per creare un oggetto, supponiamo l’oggetto a e l’oggetto b (oggetti numerici), utilizzo questo comando:
    a <- 10
    b <- 12
    dove <- è la freccia di assegnazione (in questo caso ho assegnato il numero 10 all'oggetto a e il numero 12 all'oggetto b). Così facendo nell’“Environment” si è creato l’oggetto a e l’oggetto b.

Ovviamente, oltre agli oggetti numerici, posso creare anche oggetti di ogni tipo, come ad esempio un oggetto stringa (contenente una parola). Supponiamo infatti di creare un oggetto c e un oggetto d che contengano rispettivamente le parole “Ciao” e “Mario”. Per farlo utilizziamo questo comando:

  • c <- "Ciao"
  • d <- "Mario"

Come si può notare è importante inserire le stringhe tra virgolette. Così facendo appariranno altri oggetti nell’“Environment”.

  • Inoltre, posso creare anche oggetti logici, come ad esempio:
    e <- TRUE
    f <- FALSE
    Queste non sono stringhe.

Richiamare i comandi dati

  • Per richiamare i comandi dati, ovvero i comandi scritti nella “Console”, bisogna premere i tasti freccia (↑ o ↓) della tastiera.
  • Esempio: se premo la freccia in su ↑ richiamo l’ultimo comando dato, se la ripremo richiamo il penultimo comando dato e così via.
  • Questo è utile per evitare di riscrivere sempre un comando.

Modificare oggetto

  • Per modificare un oggetto basta sovrascrivere il comando. Ad esempio, se volessi modificare l’oggetto e (TRUE) trasformandolo in una stringa ("TRUE"), basta riprendere il codice e modificarlo opportunamente:
    e <- "TRUE"

Modo di un oggetto

  • Ogni oggetto ha il suo modo e per vederlo basta usare il comando “mode”. Ad esempio:
    > mode(a)
    > mode(d)
    > mode(e)
    Quindi, l’oggetto a ha un mode “numeric” (essendo un numero), l’oggetto d ha un mode “character” e l’oggetto e ha un mode “logic”.

Costruire collezioni di oggetti (oggetti più complessi) funzione combine

  • Per costruire collezioni di oggetti si usa la funzione combine c che mette insieme più oggetti. Ad esempio, se io volessi combinare l’oggetto c e l’oggetto d, creo un oggetto “vettore1” che combina c e d, grazie alla funzione combine:
    vettore1 <- c(c, d)
    La scritta chr [1:2] mi dice che il vettore 1 è un oggetto di mono carattere e che è composto da 2 elementi.
  • Con il combine, creando ad esempio un oggetto “vettore2”, posso anche combinare due numeri. Ad esempio, combino l’oggetto a e l’oggetto b:
    vettore2 <- c(a, b)
    La scritta num [1:2] mi dice che il vettore 2 è un oggetto mono numerico e che è composto da 2 elementi.
  • Adesso creiamo un oggetto “prova” che combina l’oggetto a, l’oggetto vettore2 e l’oggetto b:
    prova <- c(a, vettore2, b)
    In questo caso esce la scritta num [1:4], ovvero l’oggetto prova ha lunghezza/dimensione 4 e ha un mode “numeric”. È di lunghezza 4, pur avendo combinato 3 oggetti, perché il vettore 2 è di lunghezza 2.
  • Supponiamo di creare un oggetto “vettore3” che combini a, b, c, d:
    vettore3 <- c(a, b, c, d)
    Notiamo come il vettore3 è chr [1:4], ovvero è di mode character però non contiene solo dei caratteri ma anche dei numeri. Ha fatto una operazione di forzatura, perché non potendo convertire le stringhe “ciao” e “Mario” in due numeri, ha convertito i numeri 10 e 12 in stringhe (infatti ha scritto i numeri così: “10” e “12”).
  • Se io creassi un oggetto “vettore4” che combini a, b, e, f:
    vettore4 <- c(a, b, e, f)
    Notiamo come il vettore4 è num [1:4], ovvero è di mode numeric; infatti ha convertito il TRUE in 1 (oggetto e) e il FALSE in 0 (oggetto f).
  • Quindi quando usiamo la funzione combine dobbiamo tenere a mente che fa queste forzature. Infatti, richiede al suo interno oggetti della stessa natura, sennò procede alla conversione.

Creare una lista

  • Ci sono però delle situazioni in cui ho bisogno che ogni oggetto mantenga la propria natura ma conservandoli tutti nello stesso oggetto. Questo è possibile attraverso la funzione lista: “list”. Infatti, la lista è un contenitore di oggetti che possono avere anche natura eterogenea che viene preservata. Supponiamo, ad esempio, di creare una lista1 che contenga gli oggetti a, b, c, vettore2 e vettore3:
    lista1 <- list(a, b, c, vettore2, vettore3)
    Notiamo che nell’“Environment” viene creato un oggetto con un simbolo di una freccia, che se cliccata mostra la lista degli oggetti presenti nella lista1.
  • Se adesso scriviamo questo:
    lista2 <- list(a, b, c, "vettore2" = vettore2, "VETTORE3" = vettore3)
    il contenuto non cambia ma si danno dei nomi agli oggetti. Questo è comodo perché molte volte andremo a prendere degli oggetti situati all’interno di una lista.
  • Come si fa? Si usano le parentesi quadre. Se ci richiamiamo la lista1 con il comando:
    > lista1, ottengo questo nella “Console”.

Prendere un solo oggetto di un elemento all'interno di una lista

  • Però supponendo che io non voglia tutto l’elemento 5 ma solo “Mario” devo scrivere in questo modo:
    > lista1 [[5]] [4]
    Infatti, nella “Console” ottengo questo. Scrivo 4 perché la scritta “Mario” si trova al quarto posto.
  • Per fare questo si può utilizzare un altro modo più comodo. Infatti, scrivendo il simbolo $ posso selezionare il nome dell’oggetto senza andare a contare:
    > lista2$VETTORE3 [4]
    Infatti, nella “Console” ottengo questo.

Prendere più oggetti di un elemento all'interno di una lista

  • Invece, per prendere più di un oggetto si usa la funzione combine. Ad esempio, se io voglio prendere gli oggetti "10" e "12" del VETTORE3 scrivo questo comando:
    > lista2$VETTORE3 [c(1, 2)]
    Infatti, nella “Console” ottengo questo.
  • Solitamente queste coppie di stringhe o numeri, ma in generale vale per tutti gli oggetti che si prendono all’interno di una lista, vengono nominati al fine di individuarli più facilmente. Ad esempio, quello che voglio fare adesso è nominare “prova2” la coppia di stringhe “10” “12” presenti nel VETTORE3 della lista2. Per farlo procedo in questo modo:
    prova2 <- lista2$VETTORE3 [c(1, 2)]

Moltiplicazione di oggetti

  • Per effettuare l’operazione moltiplicazione, la posso fare solo con gli oggetti di mode numeric. Ad esempio, moltiplico l’oggetto a con l’oggetto prova:
    > a * prova
    Nella “Console” ottengo questo.
  • Se invece facessi la moltiplicazione tra un mode numeric, come l’oggetto a, e un mode character, come l’oggetto prova2, otterrei questo errore: Error in a * prova2 : non-numeric argument to binary operator.

Convertire il mode di un oggetto

  • Per convertire il mode di un oggetto si usa la funzione as.numeric o as.character:
  • as.numeric: si usa quando voglio trasformare il mode character di un oggetto in mode numeric;
  • as.character: si usa quando voglio trasformare il mode numeric di un oggetto in mode character.

Ad esempio:

  • Voglio trasformare prova2, che ha mode character, in mode numeric. Per farlo creo innanzitutto un nuovo oggetto “prova3” e poi uso la funzione as.numeric:
    prova3 <- as.numeric(prova2)
    Nella “Environment” si creerà questo nuovo oggetto con mode convertito.
  • Se voglio trasformare vettore2, che ha mode character, in mode numeric, ma presenta al suo interno le stringhe “Ciao” e “Mario” che non possono essere convertite in numeri, accade questo nella “Console”: viene generato un WARNING MESSAGE – NAs introduced by coercion ovvero l’operazione è stata fatta ma laddove non è stato possibile è stato inserita la scritta NA (Not Available – Non Disponibile). Infatti, nella “Environment” si creerà questo nuovo oggetto.

Salvare il lavoro su R-Studio

  • Per salvare il lavoro fatto su R-Studio esistono diversi modi. Uno è quello di salvare i singoli pezzi, ad esempio per salvare il file script o il workspace basta cliccare sull’icona dell’hard disk.
  • Però un modo più comodo è:
    - Chiudere il programma cliccando sulla X in alto a destra,
    - Una volta fatto si aprirà una finestra dove basterà cliccare su “Save Selected”.

Lezione 2: 18/03/2022

Help

  • Per accedere all’“Help” di R-Studio, basta digitare nella “Console” help ed inserire nelle parentesi il comando che mi interessa. Ad esempio, se io volessi aiuto sul comando seq (che più avanti esplicheremo) basterà scrivere così:
    > help("seq")
  • Così facendo si attiva automaticamente la finestra HELP che contiene una serie di informazioni e le più importanti sono:
  • Usage: ci dà la sintassi della funzione, che in molti casi possono esserci delle variazioni della stessa funzione. In questo caso la sintassi della funzione seq è questa:
    seq(from = 1, to = 1, by = ((to - from)/(length.out - 1)), length.out = NULL, along.with = NULL, ...)
  • Arguments: ci spiega gli argomenti della funzione.
  • Examples: che ci elenca alcuni esempi di come usare la funzione.

Costruire un vettore che contenga n numeri

  • Per creare un vettore che contenga n numeri si utilizzano i due punti. Ad esempio, vogliamo creare un oggetto “vettore10” che contenga i numeri da 1 a 30. Per farlo nella “Console” dobbiamo scrivere così:
    vettore10 <- 1:30
    Così facendo nell’“Environment” si crea l’oggetto.
  • Se richiamiamo il vettore10 nella “Console” avremo questo.

Sequenza funzione sequence

  • Se invece io volessi costruire un vettore che non contenga numeri in sequenza ma che sia composto da numeri sparsi (come ad esempio 1, 2, 5, 7, 9) si può utilizzare la funzione sequence seq.
  • Il fatto che From e To sono =1 significa che l’argomento è assegnato e quindi si può evitare di scrivere sia From che To, ma basta scrivere solo il numero di riferimento. Gli elementi fondamentali sono:
  • From: valore di inizio sequenza;
  • To: valore di fine sequenza;
  • By: incremento della sequenza.

Ad esempio, voglio creare questa sequenza di numeri: 1, 2, 5, 7, 9 e quindi con un incremento di 2. Per farlo procedo in questo modo:

  • > seq(from=1, to=9, by=2)
  • Allo stesso modo posso scrivere in questo modo:
    > seq(1, 9, by=2)
    Così facendo nella “Console” avrò questo.
  • Ad esempio, voglio creare una sequenza con i numeri da 1 a 30 con un incremento di 2:
    > seq(1, 30, by=2)
    Così facendo nella “Console” avrò questo (si ferma a 29 ovviamente).
  • Ad esempio, voglio creare un “vettore11” che abbia:
    • Tutti i numeri da 1 a 10
    • I seguenti numeri: 35, 37, 39, 41
    • Il numero 59
    Per costruirlo in maniera efficace ci occupiamo di questi 3 punti separatamente per poi unirli:
    • 1:10
    • seq(from=35, to=41, by=2)
    • 59
    Adesso possiamo unire questi codici grazie alla funzione combine:
    vettore11 <- c(1:10, seq(from=35, to=41, by=2), 59)
    Così facendo nella “Console” avrò questo.
  • Se io adesso volessi prendere, all’interno del “vettore11”, gli elementi dal terzo al quinto; lo faccio grazie all’uso delle parentesi quadre che mi permettono di accedere agli oggetti:
    > vettore11 [3:5]
    Così facendo nella “Console” avrò questo.

Calcolare la dimensione di un oggetto funzione length

  • Per calcolare la dimensione di un oggetto si utilizza la funzione length (lunghezza): length. Ad esempio, se volessi trovare la lunghezza del “vettore11” procedo in questo modo:
    > length(vettore11)
    Così facendo nella “Console” avrò questo: La lunghezza è 15 perché è composto da 15 argomenti.

Potenze

  • Se ad esempio dovessi fare 3 elevato a 2, posso procedere in 2 modi:
    > 3**2
    > 3^2

Estrazione radice quadrata

  • Se volessi estrarre la radice di 100 procedo in questo modo:
    > 100^(1/2) oppure > 100^0.5 (N.B. il separatore dei decimali è il punto)
  • Un altro modo per estrarre la radice quadrata è usare la funzione square root (radice quadrata): sqrt.
  • Ovviamente se ad esempio 100 fosse assegnato ad un oggetto a basta procedere in questo modo.

Unire oggetti separati funzione paste

  • Per unire oggetti separati, non utilizzo la funzione combine perché lascerebbe gli oggetti separati, ma utilizzo la funzione paste: paste.
  • La sintassi di questa funzione è: paste(..., sep = " ", collapse = NULL, recycle0 = FALSE)

Ad esempio, se volessi unire l’oggetto c ("Corso"), l’oggetto d ("di") e l’oggetto z ("Data Mining con R") procedo in questo modo:

  • > paste(c, d, z)
    Così facendo nella “Console” avrò questo.
  • Un aspetto importante della funzione paste è il cosiddetto separatore, ovvero il sep. Questo ha un valore assegnato per default; quindi, se non viene specificato nulla, per separatore utilizza lo spazio.
  • Se invece, ad esempio volessi separare gli oggetti con l’underscore (trattino basso _), procedo in questo modo:
    > paste(c, d, z, sep="_")
    Così facendo nella “Console” avrò questo.

Valore minimo e massimo di un oggetto numerico

  • Per identificare il valore minimo o il valore massimo di un oggetto numerico utilizzo o la funzione min o la funzione max.

Media, mediana, varianza di un oggetto

  • Per identificare la media, la mediana e la varianza di un oggetto numerico utilizzo le funzioni apposite.
Anteprima
Vedrai una selezione di 14 pagine su 64
Comandi del programma R Studio Pag. 1 Comandi del programma R Studio Pag. 2
Anteprima di 14 pagg. su 64.
Scarica il documento per vederlo tutto.
Comandi del programma R Studio Pag. 6
Anteprima di 14 pagg. su 64.
Scarica il documento per vederlo tutto.
Comandi del programma R Studio Pag. 11
Anteprima di 14 pagg. su 64.
Scarica il documento per vederlo tutto.
Comandi del programma R Studio Pag. 16
Anteprima di 14 pagg. su 64.
Scarica il documento per vederlo tutto.
Comandi del programma R Studio Pag. 21
Anteprima di 14 pagg. su 64.
Scarica il documento per vederlo tutto.
Comandi del programma R Studio Pag. 26
Anteprima di 14 pagg. su 64.
Scarica il documento per vederlo tutto.
Comandi del programma R Studio Pag. 31
Anteprima di 14 pagg. su 64.
Scarica il documento per vederlo tutto.
Comandi del programma R Studio Pag. 36
Anteprima di 14 pagg. su 64.
Scarica il documento per vederlo tutto.
Comandi del programma R Studio Pag. 41
Anteprima di 14 pagg. su 64.
Scarica il documento per vederlo tutto.
Comandi del programma R Studio Pag. 46
Anteprima di 14 pagg. su 64.
Scarica il documento per vederlo tutto.
Comandi del programma R Studio Pag. 51
Anteprima di 14 pagg. su 64.
Scarica il documento per vederlo tutto.
Comandi del programma R Studio Pag. 56
Anteprima di 14 pagg. su 64.
Scarica il documento per vederlo tutto.
Comandi del programma R Studio Pag. 61
1 su 64
D/illustrazione/soddisfatti o rimborsati
Acquista con carta o PayPal
Scarica i documenti tutte le volte che vuoi
Dettagli
SSD
Scienze economiche e statistiche SECS-S/01 Statistica

I contenuti di questa pagina costituiscono rielaborazioni personali del Publisher mariogiorno di informazioni apprese con la frequenza delle lezioni di Analisi dei dati e data mining e studio autonomo di eventuali libri di riferimento in preparazione dell'esame finale o della tesi. Non devono intendersi come materiale ufficiale dell'università Università degli Studi di Roma La Sapienza o del prof Arezzo Maria Felice.
Appunti correlati Invia appunti e guadagna

Domande e risposte

Hai bisogno di aiuto?
Chiedi alla community