lab in informatica laurea in biologia / biologia … · openoffice è un pacchetto gratuito di...
TRANSCRIPT
Lab in InformaticaLaurea in Biologia / Biologia Molecolare, Università di Padova
2011/2012
Calcoli con Fogli Elettronici Applicazioni nella statistica descrittiva
Ivilin Stoianov, Alessia [email protected]
Stoianov, Ceccato [email protected] 2
• Introduzione• Struttura ed inserimento dati• Elaborazione dei dati• Statistica descrittiva
Stoianov, Ceccato [email protected] 3
Che cosa è un Foglio di Calcolo ?
• Un foglio di calcolo / foglio elettronico / spreadsheet e' un programma che permette di:– inserire – elaborare– visualizzare
vari tipi di informazioni digitali (dati) in una tabella.
• Le applicazioni piu' diffuseCalc(Open Office), Excel(Microsoft Office)
Stoianov, Ceccato [email protected] 4
Un Foglio di Calcolo
• Struttura:– un file di tipo foglio di calcolo contiene una o più tabelle (fogli).– una tabella consiste in una griglia di celle.– la cella è il contenitore principale d’informazione digitale (dati) di
diversi tipi (numerici, testuali, formule).
• L’informazione:– viene inserita nelle celle;– elaborata (automaticamente) tramite calcoli (formule);– visualizzata in modo testuale, numerico o grafico.
Stoianov, Ceccato [email protected] 5
OpenOffice è un pacchetto gratuito di applicazioni orientati all' Elaborazioni dei Dati e Documenti nel ufficio e la casa
• Elaborazione testi• Foglio di calcolo• Presentazioni• Grafica vettoriale • Archiviazione dati
www.openoffice.org
Aprite un foglio di calcolo:Menu d'avvio: Applicazioni → OpenOffice → OpenOfficeCalc
Stoianov, Ceccato [email protected] 6
barra MENU
barre degli strumenti:operazioni frequenti
Nome tabelle
cella attiva
indirizzo delle celle attive Barra delle formule
indice riga
indice colonna
Barra stato
Barra-Titolo HELP ?
Scroll-bars
OpenOffice-Calc
Menù contestuale (mouse-tasto destro)
griglia di celle
Stoianov, Ceccato [email protected] 7
Esercizio
• Esplora il menu
• Creare un nuovo file – foglio di calcolo
• Salvare il file con il nome calcolo1.ods
• Esplorare il menu HELP (GUIDA)
Stoianov, Ceccato [email protected] 8
• Introduzione• Struttura ed inserimento dati• Elaborazione dei dati• Statistica descrittiva
Stoianov, Ceccato [email protected] 9
• un foglio di calcolo è una griglia composta da celle• ciascuna cella è identificata (riferita) da una colonna (A, B,
…) e una riga (1, 2, …) (Esempio: cella D8)• I riferimenti corrispondono agli indirizzi nella memoria e
permettono calcoli automatizzati (programmi)
D8
Struttura di un foglio di calcolo
Stoianov, Ceccato [email protected] 10
Valori
• una cella può essere vuota oppure contenere un valore
Stoianov, Ceccato [email protected] 11
Tipi di Valori• le celle B1, B3, C3 contengono dei valori di tipo testuale• la cella C1 contiene un valore di tipo data• le celle B4, B5, B6 e C4, C5, C6 contengono
dei valori di tipo numerico
Stoianov, Ceccato [email protected] 12
Interpretazione dei Valori
I valori possono avere diversi interpretazioni:
• Contenuto– Numero interi (4), reali (3,14), valuta (12$), percentuali (35%)– Data/ora (12 Aprile 2004) scrivere: 12/04/2004 – Testo Corso di informatica– Logico (Vero / Falso).– Formula espressioni (matematici, testuali, …) su altre celle
=SUM(A3:A10)
• Interpretazione: (con tasto-destro-mouseFormato Celle)– Generale, numero, frazione, valuta, data, ora, …
2007 numero o anno1 numero, valore logico, testo
Stoianov, Ceccato [email protected] 13
Esercizio
• Nel foglio di calcolo che avete gia' aperto
– copiare i valori (testi,numeri e dati) che sono riportati qui sotto facendo attenzione che siano interpretati correttamente dal foglio di calcolo
– colorare le celle che contengono dei numeri
– allineare al centro tutti i valori
– disegnare tutti i bordi delle celle piene e cambiare lo stile del testo
Stoianov, Ceccato [email protected] 14
Intervalli• una singola cella viene riferita con colonna e riga (es: A3)• possiamo riferire anche a (compatti) intervalli di celle.• Esempi: B2:B10, B12:E12, D3:F8
Stoianov, Ceccato [email protected] 15
Insiemi di Intervalli• Un intervallo è composto da un
compatto rettangolare insieme di celle.• E’ possibile riferirsi anche a insiemi di intervalli• Ad esempio: (intervalli disgiunti) C2:C10;D4:F10
Stoianov, Ceccato [email protected] 16
Selezione di celle
• Per selezionare una cella basta cliccarci sopra• Per selezionare un intervallo di celle ci si deve posizionare all’angolo in alto a sinistra del intervallo e tenendo premuto il tasto sinistro del mouse si arriva all’angolo in basso a destra• In modo alternativo ci si può spostare con i tasti cursore tenendo premuto lo SHIFT• Si può anche selezionare una parte non rettangolare o un’intera riga o colonna•Per selezionare due cose non adiacenti usare il tasto Ctrl
Stoianov, Ceccato [email protected] 17
Inserimento e eliminazione di celle, righe e colonne
• E’ possibile inserire una cella nel punto individuato dal cursore con Inserisci|Celle
• Ci sono due possibilità:- tutte le celle di quella riga verranno spostate a destra- tutte le celle di quella colonna verranno spostate in basso
• Allo stesso modo è possibile eliminare la cella corrente con Modifica|Elimina: tutte le celle di quella riga verranno spostate a sinistra oppure tutte le celle di quella colonna verranno spostate in alto
• E’ inoltre possibile inserire o eliminare intere righe o colonne
Stoianov, Ceccato [email protected] 18
Inserimento di dati• Foglio di lavoro: in uno già aperto o creare un nuovo (File > Nuovo)
• Tabella: selezionare una tabella o creare nuove.
• Inserimento semplice: (i) selezionare una cella; (ii) scrivere l’informazione.
• Inserimento di una serie: (i) scrivere due elementi; (ii) selezionarli ed estendere il gruppo muovendo il cursore (di forma “+” ).
• Modifica dei dati: scrivere nuovi valori, oppure fare un doppio click sulla cella (o F2) e modificare il contenuto.
• Copia & Incolla, Spostare.• Cancellare un valore: mouse-tasto destro Cancella contenuto.
• Eliminare una cella: mouse-tasto destro Elimina; segue domanda come spostare le celle intorno.
• Menù contestuale: per ogni tipo di attività, le operazioni spesso eseguite sono accessibili da un menu contestuale (premere il tasto destro del mouse).
Stoianov, Ceccato [email protected] 19
Nominare i dati
• Nominare dei dati in una colonna– Di solito i dati in un vettore-colonna vengono nominati nella prima riga. – Questo nome viene usato per varie elaborazioni (es., grafici).
Studente Eta classe 8 ore classe 9 ore1 15 6.74 8.312 14 7.98 7.723 16 6.03 8.154 15 7.56 8.455 14 6.14 7.50
02468
10
Studente 2 4
classe 8 ore
classe 9 ore
Stoianov, Ceccato [email protected] 20
Esercizio
• Creare un nuovo foglio di lavoro• Determinare tre colonne per inserire il nome, l’età, e data di
nascita di 10 vostri amici e nominare le colonne (nella prima riga) (ad esempio, colonne A, B, C; nomi: “Nome”,”Età”,”Data”)
• Inserire i dati nelle tre colonne, cominciando dalla seconda riga• Salvare il file come Nomi.ods • Applicare diverse formattazioni (allineamento, colore, bordi, stile)
per le diverse colonne
Stoianov, Ceccato [email protected] 21
• Introduzione• Inserimento e struttura dati• Elaborazione dei dati• Statistica descrittiva
Stoianov, Ceccato [email protected] 22
Calcoli con FormuleCosa servono: Eseguire calcoli su dati (o sul risultato di altre formule).
Inserimento: Supponiamo che il risultato singolo numero/testo (i) selezionare una cella,
(ii) scrivere ‘=‘ e la formula; (iii) Invio
Esempio: =somma(A1:A10)<Invio> SUM(A1:A10)
Si nota:- I calcoli vengono eseguiti automaticamente.- il risultato compare sulla cella selezionata. - la formula compare sulla barra delle formule.- per copiare la formula: (1) selezionare; (2) copia; (3) Incolla - per copiare solo i risultati: (3’) (menu)ModificaIncolla SpecialeValori.- modificare una formula: doppio click.
Stoianov, Ceccato [email protected] 23
Riferimento dei dati
Esempi
- una cella: <colonna><numero_riga> B3
- vettore-riga: <rif_cella_sinistra>:<rif_cella_destra> B1:D10
- vettore-colonna: <rif_cella_in_alto>:<rif_cella_in_basso> B1:B10
- intera riga: <num_riga>:<num_riga> 1:1
- intera colonna: <colonna>:<colonna> B:B
- tabella: <cella_sx_in_alto>:<cella_dx_in_basso> B1:D10
- gruppo di celle: <rif_cella1>;<rif_cella2>; … B1;F4;B7
Stoianov, Ceccato [email protected] 24
Calcoli semplici
• Cominciamo sempre con ‘=‘• operazioni di base: +,-,*,/,• priorità delle operazioni:* / > + -• cambiare priorità: con parentesi ( )
N1 N2 Operazione Risultato5 10 "=A2+B2" 15
"=A2-B2" -5"=A2*B2" 50"=A2/B2" 0.5
"=A2*(3+B2)" 65
X Y Operazione X+Y1 3 "=A10:A12+B10:B12" 42 2 usa Maiusc-Ctrl-Invio 43 1 4
Stoianov, Ceccato [email protected] 25
Formule con funzioni (numeriche)
• Esiste una grande varietà di funzioni (numeriche, testuali, ecc.). es. radice quadrato radq(B2), SQRT(B2)
media media(A1:A10) AVERAGE(A1:A10)
• Per inserire una funzione:
(1) selezionare una cella (o più celle se il risultato non è scalare); (2) scrivere ’=‘; (3a) scrivere il nome della funzione più i suoi parametri, oppure (3b) fare click su ‘fx’ e scegliere la funzione; dopo scegliere gli argomenti.
• Alcune delle principali funzioni numeriche:– sen(), cos(), exp(), potenza(), radq()– casuale(), int(), segno(), ass()– somma(), media(), mediana(), var(), dev.st(), conta.numeri()– min(), max()– sin(), cos(), exp(), power(), sqrt()– rand(), int(), sign(), abs()– sum(), average(), median, mode(), var(), stdev(), count()
Stoianov, Ceccato [email protected] 26
Funzioni di testo
Testo: una sequenza di lettere, numeri, simboli.– Inserimento di testo nelle celle: ‘abc , ’12baba– testo-costante (in formule): “abc”
Alcune funzioni con parametri testuali:• lunghezza(t) restituisce il numero di simboli in una stringa t.• concatena(t1;t2;t3;..) unisce diversi elementi di testo in un elemento• sinistra(t;n) restituisce i primi n simboli a sinistra di un testo t.• stringa.estrai(t;p;n) restituisce n simboli di un testo t, cominciando da p• destra(t;n) restituisce i primi n simboli a destra di un testo t.• identico(t1;t2) verifica se due testi t1 e t2 sono uguali.• trova(t;T) rileva un testo t all'interno di un altro testo T.• testo(n;form) converte il numero n in testo, usando il formato form• valore(t) converte un testo t in un numero.• len(), concatenate(), left(), mid(), right(), exact(), text(), value()
Stoianov, Ceccato [email protected] 27
Calcoli logici
• I valori logici: VERO e FALSO (oppure, 1 e 0)
• Operazioni che producono un risultato logico:=, >, >=, <, <=, <>,
• Funzioni logiche: e(a;b), o(a,b), non(a)
• Funzioni condizionali:se(condizione; se_vero; se_falso) IF()dipendente dal valore condizione, restituisce il valore se_vero / se_falsoSi nota: se_vero o se_falso possono essere altre funzioni condizionali.
• Una generalizzazione della funzione se()scegli(indice; val1; val2; val3; …) ????dipendente dal valore indice, restituisce il valore val1 o val2, o val3 …
Stoianov, Ceccato [email protected] 28
Calcoli vettoriali
Scopo: identici calcoli su ciascun elemento di un insieme di dati (di solito, vettore).
Inserimento: 1. Determinare i dati da elaborare e le celle per il risultato.2. Inserire la formula che calcola il primo elemento del risultato.3. Copiare la formula nelle celle che contengono il resto del
risultato.
Si nota: la formula può essere copiata con Copia – Incolla, oppure “trascinando” la cella.
Fate una prova.
Stoianov, Ceccato [email protected] 29
Riferimenti assoluti e relativi
Il sistema di riferimenti assoluti e relativi serve per l’automatizzazione della scrittura di operazioni su vettori / matrici
Riferimenti assoluti e relativi: - relativo: il solito <colonna><riga> (es.: A1)- assoluto: con un prefisso $ davanti la colonna o la riga (es: A$1)
Un riferimento copiato:- cambia, se è relativo (A1) - rimane costante se è assoluto ($A$1)
Utilizzo: - I riferimenti assoluti indicano valori scalari, costante, ecc.- I riferimenti relativi indicano gli elementi delle matrici.
Stoianov, Ceccato [email protected] 30
Riferimenti assoluti e relativi (2)
Si ricorda: i riferimenti assoluti ($A$1) non cambiano i riferimenti relativi (A1) cambiano:
Esempi:• A1 cambia la colonna (es. A->B) e la riga (es., 1->2)
se viene trascinato su una riga o colonna.
• $A1 (la colonna e' fissa) cambia solo la rigase viene trascinato in una riga
• A$1 (la riga e' fissa) cambia solo colonna se viene trascinato in una colonna
• $A$1 non cambia in nessun tipo di trascinamento
Stoianov, Ceccato [email protected] 31
Esercizio • Calcoli su dati scalari:
– inserire in A1: “=2+3”– inserire in: A1: 2, A2: 3, A3: “=A1+A2”
• Aritmetica su due vettori:– Preparare 2 colonne con intestazione x e y (X=1,2..10, Y=1,2..10) – Calcolare le seguenti operazioni vettoriali: x+y, x-y, x*y,
ogni operazione in una colonna indicando in ogni colonna il tipo di operazione effettuata
• Aritmetica su un vettore e una costante:– Preparare 1 colonna X=1,2..10, e una costante p=2,5– Calcolare la potenza X^p– Cambiare p e osservare il risultato
• Formule con funzioni numeriche sui valori di un vettore:– Preparare argomento X: [9,25,36,81]– Calcolare: radq(X) sqrt()– S2_Math.ods: somma delle colonne mult_cor, sub_time, read_time
Stoianov, Ceccato [email protected] 32
• Scrivere in due colonne intitolate `Nome', e `Cognome' il nome e il cognome di 10 persone
• Concatenare il Nome e Cognome
• Convertire il testo in maiuscolo
Esercizio (formule testuali)
Stoianov, Ceccato [email protected] 33
• Introduzione• Inserimento e struttura dati• Elaborazione dei dati• Statistica descrittiva
Distribuzioni di probabilità empirica1) OSSERVAZIONIcampione X: N osservazioni {x1,x2 … xN} scala di misura Y K livelli [y1 … yK]
Esempio: il sesso {M,F} di 30 persone: [M,F,F,F,F,M,F,M,M,F,M,M ...]
2) NUMERO di OSSERVAZIONIfrequenza fi del livello yi∈Y nel campione X:
il numero di osservazioni di yi nel Xprobabilità empirica pi di un livello yi∈Y nel campione X: pi= fi / N
3) DISTRIBUZIONE del NUMERO di OSSERVAZIONIdistribuzione di frequenze F(y) nel campione X:
l’insieme di frequenze fi di ciascun livello yi ∈Y nel campione Xdistribuzione di probabilità empirica P(y) nel campione X:
l’insieme di probabilità empirica pi di ciascun livello yi ∈Y nel campione X
Frequenze
Categorie abbinate
• Se abbiamo dati numerici con tanti livelli, rischiamo di avere pochi osservazioni per ciascun livello … Che cosa fare ?
• Soluzione: definire una scala S derivata dalla scala originale Y,con un limitato numero di livelli (bin) {s1, s2, … sM}.
• Nella nuova scala S, ciascuno livello si raggruppa livelli {yi1, yi2, … sik}
• In una scala ad intervalli (ad esempio tempo, spazio, ecc), il numero di livelli raggruppati in ciascun nuovo livello si deve essere uguale, per rispettare la omogeneità della scala originale.
• ESEMPIO: Raggruppare i 1000 livelli 0 – 1000 mm in una scala con 10 livelli.
Distribuzioni di frequenze di dati numerici nei Fogli Elettronici
Se abbiamo dati X di tipo numerico (scala ad intervalli), possiamo utilizzare la funzione frequency() per calcolare la distribuzione dei dati X.
1. Avendo le osservazioni X in una colonna (es.: B2:B21)2. Inserire i livelli S in un’altra colonna (es: D2:D11)3. Applicare la funzione frequency(vettore_osserv.; vettore_categorie)
• Selezionare una colonna per il risultato (es., E2:E11)• Scrivere ‘=frequency(’ • Selezionare / riferire le osservazioni; scrivere ‘;’• Selezionare / riferire le categorie; scrivere ‘)’• Premere ‘Ctrl-Maiusc-Invio’ (solo ‘Invio’ calcola una frequenza solo!!)
Si nota:
– I livelli indicati definiscono una nuova scala S per i dati.
– La frequenza fi di ciascun livello si riporta il numero di osservazioni con valori (si-1 ... si].
Distribuzioni: calcolo e rappresentazione grafico
Nome RT RT F p()Ivan 380 400 1 0.1111Sara 430 450 2 0.2222Tomi 515 500 3 0.3333Piero 475 550 2 0.2222Linda 460 600 1 0.1111
Maria 560 =FREQUENZA(B2:B10;D2:D6)Stefano 420Leo 510Boris 497
400 450 500 550 600
0
0.05
0.1
0.15
0.2
0.25
0.3
0.35
p()
Grafici:
1. Pochi livelli: Istogramma (diagramma a barre)
Nome sesso Sesso F p()Ivan 1 1 6 0.6667Sara 2 2 3 0.375Tomi 1 =FREQUENZA(B2:B10;D2:D3)Piero 1 =E2/CONTA.NUMERI(B2:B10)Linda 2Maria 2Stefano 1Leo 1Boris 1
1 2
0
1
2
3
4
5
6
7
F
2. Tanti livelli: Grafico a linea
Esercizio: probabilità empirica
• File S3_RT.xls• Calcolare le frequenze degli RT (bin a distanza di 50)• Calcolare la distribuzione di probabilità empirica• Fare grafico della distribuzione di probabilità.
Tendenze centrali
1. Se abbiamo dati in una colonna (es.: B2:B21)
1. La media = somma divisa per il numero dei punti.
- selezionare una cella per il risultato (di solito sotto i dati) (es: B23)- scrivere ‘=sum(’;- selezionare le osservazioni; ‘)’; Premere ‘Invio’- in un’altra cella, dividere la somma per il numero dei dati ( count() )
3. Mediana o moda: ordinare i dati e trovare: - la categoria centrale (mediana) - più-frequente (moda) (oppure utilizzando distribuzioni di frequenze: la categoria più numerosa)
Variabilità
• Range / Intervallo (distanza tra i valori estremi): max(X) – min(X)
• Somma dei quadrati delle distanze dalla media (scarti)
• Varianza della popolazione (la media degli scarti2):
• Deviazione standard (Scarto quadratico medio):
( )n
XxiX
2
2 ∑ −=σ
2XX σσ =
( ) ( )222
2222
22
XXXn
x
n
XXxx
n
Xx ii iiX −=−=
+−=
−= ∑∑∑σ
( ) 2∑ −= XxSS iX
Calcolo della varianza / dev.st
I. La varianza (della popolazione):
Algoritmo A: la media del quadrato delle scarti1. Calcolare la media M2. Calcolare gli scarti dalla media Di=(Xi-M)3. Calcolare il quadrato degli scarti Di
2=Di*Di.4. Calcolare la media del quadrato delle distanze var = media(Di
2).
Algoritmo B: la diff. tra la media dei quadrati e il quadrato della media:1. Calcolare la media M12. Calcolare i quadrati: Xi
2
3. Calcolare la media dei quadrati M24. Calcolare il quadrato della media M1*M15. Calcolare la differenza var=M2-M1*M1.
II. La dev. standard: dst=sqrt(var)
Var X =∑ ( xi−
X )
2
n
σ X=√Var X
Var X =X 2−X 2
Covarianza• Due variabili aleatorie (stocastiche) X e Y possono co-variare.
(per.es.: studenti con voto alto in Matematica hanno alto voto in Informatica.)• La covarianza – la media del prodotto di X e Y normalizzati con loro
medie – esprime il grado di dipendenza lineare tra X e Y:
– se positivo: al crescere di x in media cresce anche y, – se negativo al crescere di x in media decrescere y.
• Si nota:la covarianza di una variabile con se stessa = la varianza !
( )( ) ( )( )[ ]YEYXEXEYXCov −−=),(
( ) ( ) ( )XEYEXYE −=
Algoritmo A:1. Calcolare le medie Mx e My2. Calcolare il prodotto degli scarti Di = (Xi-Mx) (Yi-My)3. Calcolare la media Cov = media(Di).
Algoritmo B:1. Calcolare i prodotti XiYi
2. Calcolare le medie Mx, My, Mxy3. Calcolare la differenza Cov=Mxy - Mx My.
Funzioni per la statistica descrittiva
Funzione Sintassi(ad esempio, per le osservazioni in A2:A150)
• MEDIA AVERAGE(A2:A150)
• MEDIANA MEDIAN(A2:A150)
• VARIANZA della popolazione VAR(A2:A150)
• SCARTO quadr.med. (pop.) STDEV(A2:A150)
• COVARIANZA tra 2 campioni COVAR(A2:A150; B2:B150)
Esercizio: medie e variabilità
• File dati: S3_RTcalcolare con e senza funzioni statistiche: la media, la varianza, e la dev.st. dei RT
• File dati: S2_Mathcalcolare covarianza tra add_time, sub_time