Esplora E-book
Categorie
Esplora Audiolibri
Categorie
Esplora Riviste
Categorie
Esplora Documenti
Categorie
INTRODUZIONE.
Accesso ai dati.
3/37
Perch usare R ?
Sebbene ci siamo molti software, esistono delle ragioni specifiche per usare R:
a differenza di molti software, R gratuito;
permette pressoch qualsiasi tipo di analisi statistica;
offre la possibilit di estendere le funzionalit di base attraverso l'uso dei
pacchetti;
disponibile per sistemi Windows, Mac OS e Linux e la sintassi sempre la
stessa.
4/37
5/37
Cos' R?
6/37
I pacchetti.
I pacchetti sono dei file che estendono le possibilit di R e contengono funzioni e
dati. Vanno installati con uno specifico comando. Se, ad esempio, vogliamo
installare il pacchetto car, usiamo il comando install.packages()
install.packages(car)
7/37
GLI OGGETTI IN R.
Gli oggetti.
Gli oggetti sono semplicemente le "cose" che creiamo (o meglio, definiamo)
all'interno di R.
Alcuni degli oggetti pi comuni sono, ad esempio:
i vettori;
i data-frame;
le serie storiche.
9/37
I vettori - 1.
Un vettore pu essere pensato come la colonna di una tabella. Pu essere
chiamato anche variabile.
ESEMPIO: creiamo il vettore v contenente i numeri da 1 a 5:
v = c(1,2,3,4,5)
La c una funzione generica che concatena gli elementi per formare un vettore.
10/37
I vettori - 2.
Esistono diversi tipi di vettori:
vettori numerici (numeric vectors);
vettori con caratteri (character vectors);
vettori logici (logical vectors).
a = c(1,2,5.3,6,-2,4) # vettore numerico
b = c("uno","due","tre") # vettore con caratteri
c = c(TRUE,TRUE,TRUE,FALSE,TRUE,FALSE) # vettore logico
11/37
I dataframe - 1.
Un data-frame un insieme di vettori e, banalmente, pu essere pensato come
una tabella con pi colonne. Spesso chiamato anche dataset.
Esempio:
creiamo le colonne della tabella
d = c(673,773,845,923)
e = c("rosso","verde","blu","bianco")
f = c(TRUE,TRUE,TRUE,FALSE)
12/37
I dataframe - 2.
Infine, visualizziamo la tabella scrivendo il nome che le abbiamo assegnato:
dat
##
##
##
##
##
1
2
3
4
d
e
f
673 rosso TRUE
773 verde TRUE
845
blu TRUE
923 bianco FALSE
13/37
usare il comando $
dat$e # sintassi: NomeDataFrame$NomeVariabile
14/37
Le serie storiche.
Le serie storiche sono, semplicemente, dei dati legati al tempo.
In R, il comando ts() la serie storica pi semplice e consente di trasformare un
insieme di dati in serie storiche.
Per fare questo necessario conoscere l'istante di partenza della serie storica e
la frequenza.
15/37
Esempio.
Disponiamo del numero di laureati triennali in materie umanistiche rilevato
annualmente fra il 2002 e 2008 e vogliamo "trasformare" il vettore in una serie
storica.
lut=c(77312,90929,102935,121557,144322,143881,140697)
LUT=ts(lut,start=2002,frequency=1)
LUT
##
##
##
##
##
Time Series:
Start = 2002
End = 2008
Frequency = 1
[1] 77312 90929 102935 121557 144322 143881 140697
16/37
Scatterplot - 1.
importante rappresentare graficamente i dati di cui si dispone per renderli pi
comprensibili. Uno dei grafici pi comuni il grafico a dispersione o
"scatterplot", un tipo di grafico che mette in relazione 2 variabili.
data(mtcars)
plot(mtcars$hp, mtcars$mpg, xlab = "Potenza (cv)",
ylab = "Consumo (miglia US/gallone)", cex.lab=1.2,
cex.main=1.8, main="Consumo e Potenza", font = 2,
font.lab = 2, col.lab="DodgerBlue",
col.main="DarkSlateGray", pch = 16, col = "RoyalBlue")
abline(lm(mtcars$mpg~mtcars$hp), lwd = 3,lty = 4, col = "SeaGreen")
text(155,25,"retta di regressione", font=2,col = "SeaGreen", cex=1.5)
18/37
Scatterplot - 2.
19/37
STATISTICA DI BASE.
Statistica di base.
Con R calcolare le statistiche di base come media, davvero molto semplice.
v1=c(134,636,139,131,237,144,901,656,149,604,093,154,918,648,161,304,728,
163,293,324,944,594,110,189,132,502,844,604,147,264,156,976,156,854,434)
mean(v1) # calcola la media
## [1] 412.0857
median(v1) # calcola la mediana
## [1] 293
21/37
22/37
Statistica di base - 3.
Esistono delle funzioni, poi, che con un unico comando ci riassumono tutte le
informazioni che ci servono:
summary(v1)
##
##
Median
293.0
Max.
976.0
library(psych)
describe(v1)
##
vars n
mean
sd median trimmed
mad min max range skew kurtosis
## 1
1 35 412.09 298.56
293 387.97 238.7 93 976
883 0.57
-1.27
##
se
## 1 50.47
23/37
I TITOLI AZIONARI.
25/37
2015-12-07
2015-12-08
2015-12-09
2015-12-10
2015-12-11
2015-12-07
2015-12-08
2015-12-09
2015-12-10
2015-12-11
26/37
Ancora grafici - 1.
La prima cosa da fare quando abbiamo una qualsiasi serie storica tracciarne il
grafico. Nel caso delle serie storiche finanziarie usiamo il comando
chartSeries():
FCA.MI.xts=FCA.MI['2015-10-01::2015-12-11']
chartSeries(FCA.MI.xts, type = "candlesticks",
name="Fiat Chrysler Automobiles",
theme = chartTheme("black"))
27/37
Ancora grafici - 2.
28/37
29/37
Ancora grafici - 2.
Per esempio, diciamo di voler rappresentare i valori di chiusura del titolo:
chartSeries(FCA.MI.xts$FCA.MI.Close, name="Fiat Chrysler Automobiles")
30/37
RENDIMENTI.
32/37
33/37
Index
Min.
:2007-01-01
1st Qu.:2009-03-24
Median :2011-06-25
Mean
:2011-06-22
3rd Qu.:2013-09-18
Max.
:2015-12-11
daily.returns
Min.
:-0.1572472
1st Qu.:-0.0153606
Median : 0.0000000
Mean
: 0.0003122
3rd Qu.: 0.0164662
Max.
: 0.2399476
34/37
describe(rendimenti2); summary(rendimenti2)
##
vars n mean
sd median trimmed mad
min max range skew
## daily.returns
1 52
0 0.02
0
0 0.02 -0.05 0.04 0.09 -0.25
##
kurtosis se
## daily.returns
-0.03 0
##
##
##
##
##
##
##
Index
Min.
:2015-10-01
1st Qu.:2015-10-19
Median :2015-11-05
Mean
:2015-11-06
3rd Qu.:2015-11-24
Max.
:2015-12-11
daily.returns
Min.
:-0.0541844
1st Qu.:-0.0115163
Median : 0.0011200
Mean
: 0.0008024
3rd Qu.: 0.0143869
Max.
: 0.0402955
35/37
36/37
37/37