Docsity
Docsity

Prepara i tuoi esami
Prepara i tuoi esami

Studia grazie alle numerose risorse presenti su Docsity


Ottieni i punti per scaricare
Ottieni i punti per scaricare

Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium


Guide e consigli
Guide e consigli


Introduzione alla Programmazione in R: Operazioni Aritmetiche, Variabili e Funzioni - Prof, Dispense di Elementi di Informatica

Un'introduzione alla programmazione in r, coprendo concetti fondamentali come le operazioni aritmetiche di base, la definizione e l'utilizzo di variabili, e l'applicazione di funzioni predefinite. Esempi pratici per comprendere come eseguire calcoli, manipolare dati e utilizzare funzioni per automatizzare compiti ripetitivi.

Tipologia: Dispense

2024/2025

Caricato il 14/03/2025

nassiraa-moukagni
nassiraa-moukagni 🇮🇹

1 documento

1 / 233

Toggle sidebar

Questa pagina non è visibile nell’anteprima

Non perderti parti importanti!

bg1
Stefano Bussolon
Analisi dei dati con R
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e
pf1f
pf20
pf21
pf22
pf23
pf24
pf25
pf26
pf27
pf28
pf29
pf2a
pf2b
pf2c
pf2d
pf2e
pf2f
pf30
pf31
pf32
pf33
pf34
pf35
pf36
pf37
pf38
pf39
pf3a
pf3b
pf3c
pf3d
pf3e
pf3f
pf40
pf41
pf42
pf43
pf44
pf45
pf46
pf47
pf48
pf49
pf4a
pf4b
pf4c
pf4d
pf4e
pf4f
pf50
pf51
pf52
pf53
pf54
pf55
pf56
pf57
pf58
pf59
pf5a
pf5b
pf5c
pf5d
pf5e
pf5f
pf60
pf61
pf62
pf63
pf64

Anteprima parziale del testo

Scarica Introduzione alla Programmazione in R: Operazioni Aritmetiche, Variabili e Funzioni - Prof e più Dispense in PDF di Elementi di Informatica solo su Docsity!

Stefano Bussolon

Analisi dei dati con R

Iscriviti al corso online

Analisi dei dati con R

Un corso online di 9 lezioni (18 ore) più una

sessione di esame (facoltativo) dove verrà

introdoo R, il caricamento e la pulizia dei

dati, le analisi descriive e le forme

principali di analisi inferenziale: chi quadro,

correlazione, t-test, Anova. Verrà infine

introdoo l'approccio simulativo all'analisi

inferenziale.

Per maggiori informazioni e per iscriverti

vai alla pagina del corso:

bussolon.it/formazione/analisi-dei-dati-con-r.html

Indice

Introduzione i

Perché R iii Perché r...................................... iv R vs excel.................................. iv Vantaggi di R................................ iv Gli script in R............................... iv Riproducibilità............................... v R vs Python................................ v Approccio pragmatico........................... v

I Introduzione a r 1

1 Primi passi con R 3 Primi passi con R................................. 4 Scaricare R................................. 4 Usare R come una calcolatrice...................... 4 Assegnazione di variabili......................... 5 Guide di stile................................ 7 Help.................................... 8 Risorse................................... 8 Lo spazio di lavoro............................. 8

2 Le strutture di dati 9 Le strutture di dati................................ 10 Vettori................................... 10 La funzione c().............................. 10 Coercizione implicita............................ 11 NA - valori mancanti........................... 13 Matrici................................... 13 Fattori................................... 15 Le liste................................... 16 Data frame................................. 16 Riferimenti................................. 17

3 Filtri/subsetting 19 Filtri ed estrazione................................ 20

- Estrazione - Usare la sintassi sql - Which - Riferimenti
  • 4 Le funzioni
    • Funzioni
      • cbind, rbind
      • Operazioni su insiemi
    • Aritmetica delle matrici
    • Programmazione funzionale
      • le funzioni *apply
      • Riferimenti
  • 5 Programmazione
    • Programmazione
      • Ciao
      • Funzioni
      • Funzione, corpo, argomenti
      • If
      • For
      • Altre strutture di controllo
      • Esercizi
  • II L’analisi dei dati
  • 6 Pulire e sistemare i dati
    • Sistemare i dati
      • Pulizia dei dati
      • Verifica di consistenza
      • Un esempio
      • Trasformare i dati
      • Risorse
  • 7 L’analisi descrittiva
    • L’analisi descrittiva
      • Finalità
      • Variabili categoriali
      • Variabili ordinali
      • Variabili a intervalli
      • Due variabili categoriali
      • Una variabile categoriale, una numerica
      • Due variabili numeriche
      • Summarytools
      • Risorse
      • Esercizio
      • Scolarità
      • Le date
      • Filtrare i partecipanti
  • INDICE - Attach - Analisi delle variabili nominali - Distribuzione delle risposte corrette
  • 8 rMarkdown
    • RMarkdown
      • Markdown
      • Rmarkdown
      • I file Rmarkdown di questo corso
      • Risorse
  • 9 Visualizzare i dati - ggplot2
    • Visualizzazione dei dati
      • Gli elementi grafici
    • ggplot2
      • La logica
      • La sintassi
      • Risorse
    • Esempi
  • III La statistica inferenziale
  • 10 Analisi inferenziale univariata
    • L’approccio simulativo
      • Gli errori di campionamento
      • Introduzione all’approccio simulativo
    • Intervallo di confidenza
    • Bootstrapping
      • Generare molti campioni da un campione
      • Bootstrapping
      • Confronto fra le distribuzioni
      • Usare l’approccio parametrico
    • Intervallo di confidenza, calcolo parametrico
      • L’intervallo di confidenza
      • Confronto fra un campione ed una popolazione
  • 11 Confronto fra variabili nominali
    • Variabili nominali
      • Statistiche sulle variabili nominali
    • Confronto di una distribuzione campionaria con una distribuzione teorica
      • Un esempio: distribuzione occupati
    • Stima dell’errore
    • La simulazione
    • La distribuzione 𝜒
      • La funzione chisq.test
    • Confronto fra due variabili nominali
      • Statistica bivariata
      • Calcolare le frequenze attese
  • 12 T test: confronto fra medie di due campioni 6 INDICE
    • T test: confronto fra medie di due campioni
      • Introduzione
      • Calcolo non parametrico
      • Approccio parametrico
  • 13 Correlazione e regressione lineare
    • Correlazione e regressione lineare
      • Introduzione
      • Analisi inferenziale
      • Approccio intuitivo
      • Regressione lineare
      • Violazione degli assunti
      • Coefficiente di Spearman
      • Conclusioni
  • 14 L’analisi della varianza
    • Analisi della Varianza
      • Introduzione
      • Varianze
      • Inferenza e previsioni
      • Distribuzione dell’errore, inferenza
      • Anova a due vie
      • Confronti multipli
      • Test non parametrico
      • Conclusioni
  • 15 Il processo di ricerca
    • Strutturare il processo di analisi
      • Introduzione
      • L’efficienza
      • Correttezza
      • Solidità (robustness)
      • Trasparenza
      • Protocollo di ricerca
      • Pratiche scorrette
      • Replicabilità e riproducibilità
      • Strutturare il processo di ricerca
  • Conclusioni

ii INTRODUZIONE

Perché R

iii

PERCHÉ R v

  • possono essere ri-utilizzati
  • è più facile replicare una analisi
  • possono essere utilizzati su basi di dati diverse
  • se il codice viene commentato, è più facile ricordare cosa si sta facendo (o capire cosa ha fatto chi ha scritto il codice). Documentare i passaggi fatti con excel è molto meno naturale.

Riproducibilità

È molto più facile riprodurre analisi anche complesse. Questo ha almeno due vantaggi:

  • è possibile applicare, in maniera piuttosto semplice, la stessa analisi su dati diversi
  • questo rende più facile la verifica e la riproducibilità delle analisi, ad esempio da parte di ricercatori o laboratori diversi (open science?)
  • è possibile applicare al codice dei software di controllo di versione (ad esempio git)
  • è facile condividere il proprio codice, ed adottare delle metodologie di collabo- razione

Riferimenti

  • Excel vs R: When to use what - R for Excel Users
  • R for beginners: How to transition from Excel to R | TrendCT
  • R for Excel Users - Alteryx Community
  • Understanding R programming over Excel for Data Analysis | gap intelligence
  • Why would you learn R if you have Excel working well? - Quora

R vs Python

Se excel non è la soluzione migliore per fare analisi dei dati, R non è l’unico ambiente disponibile. Fra le alternative, una delle più accreditate è il linguaggio di programma- zione python, integrato con alcuni pacchetti quali pandas e numpy.

Il dibattito Python vs R è molto acceso, in quanto entrambi i linguaggi costituiscono un’ottima scelta.

L’opinione più condivisa è che nella statistica inferenziale, R batte Python. Nella ma- nipolazione dei dati i due ambienti se la cavano altrettanto bene. Python ha il van- taggio di essere un linguaggio di programmazione all purpose, mentre R è molto più specializzato all’analisi dei dati.

Approccio pragmatico

Generalmente, l’approccio più utile è quello di conoscere diversi strumenti, ed utiliz- zarli per fare cose diverse.

vi PERCHÉ R

Excel, libreoffice o i fogli google per le operazioni più semplici, soprattutto se si deve collaborare con persone che non usano R.

Gli editor di testo possono essere molto utili per pulire file in formato tsv o csv.

Soprattutto in ambiente linux, vi sono programmi a linea di comando che permettono di fare semplici manipolazioni di dati.

Per le analisi più complesse, e per le presentazioni professionali, usare R o python.

Riferimenti

  • Python vs R for Data Science
  • R Vs Python: What’s the difference?
  • Python or R for Machine Learning and Data Science | Netguru Blog on Python
  • Choosing R or Python for data analysis? An infographic (article) - DataCamp
  • Python vs. R : statistics

Capitolo 1

Primi passi con R

PRIMI PASSI CON R 5

# divisione intera 23 %/% 3

[1] 7

# modulo (il resto della divisione) 23 %% 3

[1] 2

# elevazione a potenza 2^

[1] 8

3^2 + (7-2)*

[1] 24

Assegnazione di variabili

La creazione di una variabile avviene attraverso la sintassi <-. In R non è neces- sario definire il tipo di variabile. Attraverso l’assegnazione, sarà R a creare un tipo opportuno di variabile (o di oggetto).

numero1 <- 5 etichetta1 <- ”Antonio” # le parentesi servono a stampare il risultato a video (numero2 <- 5.12)

[1] 5.

numero3 <- 10/ # invocando la variabile ne stampo il valore numero

[1] 3.

_# se alla stessa variabile assegno un nuovo valore

perdo il valore precedente_

numero3 <- 10* numero

[1] 20

# operazioni usando le variabili numero1 * numero

[1] 25.

# assign (variabile, valore) equivale a variabile <- valore assign (”numero4”, 7) numero

[1] 7

6 CAPITOLO 1. PRIMI PASSI CON R

<- è l’operatore di assegnamento, ed equivale alla funzione assign. Pertanto nu- mero <- 5 è una scorciatoia della funzione assign(”numero”, 5).

La funzione ls() mi permette di elencare tutte le variabili (oggetti) attualmente attivi nel framework.

ls ()

[1] ”etichetta” ”etichetta1” ”giusto” ”numero” ”numero1”

[6] ”numero2” ”numero3” ”numero4” ”pippo” ”pluto”

[11] ”sbagliato” ”variabile1” ”variabile2” ”x”

La funzione rm() rimuove un oggetto. Ad esempio, con il comando rm(variabile1) l’oggetto variabile1 sarà cancellato, e non più disponibile.

Operazioni booleane

Le operazioni booleane sono finalizzate a confrontare due elementi. L’output di queste operazioni è di tipo booleano.

Attenzione: per valutare l’uguaglianza fra due elementi si usa ==

quattro <- 4 cinque <- 5 # la variabile quattro è uguale a 4? quattro == 4

[1] TRUE

cinque == 4

[1] FALSE

# quattro è minore di cinque? quattro < cinque

[1] TRUE

# quattro è minore o uguale a 4? quattro <= 4

[1] TRUE

quattro < 4

[1] FALSE

# quattro è diverso da cinque? quattro != cinque

[1] TRUE

giusto = TRUE sbagliato = FALSE # TRUE or FALSE = TRUE giusto | sbagliato

[1] TRUE