vuoi
o PayPal
tutte le volte che vuoi
OPERATORI LOGICI
x & y, x | y, x ! y
x != y diverso
and or not
ARROTONDARE
round(x, n° decime), ceiling(), floor()
FUNZIONI MATEMATICHE
abs, sign, sqrt, exp, log, log10
Inf, pi, NaN, choose(m, x), sin, cos, tan, factorial, NA
∞ ↔ indep., x! ↔ not available
TIPI DI DATO
numeric, character, logical, complex, ma
vector, list, finite, infinite, null, man
factor, ordered
VETTORI
x = c(...) un solo tipo (o numeric o character)
vector("tipo", lunghezza) lo crea vuoto
as.vector(x, "tipo") trasforma x
any di default
NOMI ELEMENTI VETTORE names(x) anche x RINOMINARE
LUNGHEZZA length(x)
TIPOLOGIA mode(x) oppure class(x)
SEQUENZE
x = a:b
x = seq(a, b, by = 1, length = u)
intervallo quanti numeri tra a e b
LISTE
list(..., ..., ..., ...) # tipi
CREARE LISTA VUOTA vector(mode = "list")
names(x), length(x)
FACTOR
x = c(...) factor(x) VARIABILE CATEGORIALE non ordinata
factor(x, levels = c("...", "..."))
as.factor(x) trasforma
levels(y) = levels(factor(x)) ➔ NOMI delle categorie
ORDERED
x = c(...) ordered(x) VARIABILE CATEGORIALE ORDINATA
ordered(x, levels = c(...)) specifica le categorie
levels(ordered(x)) in ordine
FREQUENZE
x = factor o ordered
table(x) ➔ vettore di f. assolute
names(table(x)) nomi categorie
OGGETTI
objects() o ls()
elenco di tutti gli oggetti salvati nella memoria di lavoro
RIMUOVERE VARIABILE
rm(x) solo x
rm(list=ls()) tutte
is.tipovariabile(x)
restituisce TRUE/FALSE se x è quel tipo o no
CONDIZIONI
all(condizione su x) → TRUE/FALSE se x soddisfano
any(condizione su x) → TRUE/FALSE se almeno una soddisfa
ORDINAMENTO
x = c(...) sort(x, decreasing=FALSE) crescente
= TRUE decrescente
INDICI DEI VALORI ORDINATI
order(x, decreasing=FALSE)
= TRUE
RIPETIZIONE
rep(cosa ripetere, quante volte)
c(...) c(2, 2, 2)
x times = 2
SUBSETTING VETTORI
x = c(...)
- x[indici] VALORI CORRISP. A QUEGLI INDICI
- un solo valore → un numero
- a:b dal a-esimo al b-esimo
- indici = which(condizione)
- indice val.max = which.max(x)
- x[-indici] TUTTI I VALORI TRANNE QUELLI INDICATI
- x[condizione] TUTTI I VALORI CHE SODDISFANO COND.
- x[which(condiz)] condizione & condizione x più condiz.
PER NOME
x[c("nome.elem1", "nome.elem5")]
PER T/F
x[c(FALSE, TRUE, FALSE, TRUE)]
di un vettore di 4 elem restituisce i valori di quello con TRUE
SUBSETTING LISTE
y = list(..)
- y[[indici]] elementi corrispondenti a quegli indici
- y$nome.elemento
- PER ACCEDERE AD UN VALORE DI UN VETTORE NELLA LISTA
- y[[ind.lista]][i.vett]
- y$nome.vett[i]
• ISTOGRAMMA DATI RAGGRUPPATI IN CLASSI
hist (x, breaks = estremi, freq = F, main, xlab, y lab
tutti i dati DENSITÀ (=T FREQUENZE) ax,col, ax.axis, ax.main, ax, col, xlim, ylim, axes = T, nclass) se F non mette giù gli lif.metli tu con AXIS →
CLASSI CON AMPIEZZA =
AXIS AGGIUNGO ASSI AL GRAFICO
axis (side, at = ... , ... solite cose (cex, col ... )) lvs. a che punto segnare se stanghette con il numero
TITLE (main= "titolo", sub= " ", xlab, ylab, cex, col, ... )
MTEXT ( testo, side, col, line ... ) MARGINI expression()
TEXT (pos x, pos y, valori, font, cex, pos, ...) x₁ ↓ F₁;O₁, F₁ ↑ un po' sopra 1,2,3,... ₂ ₃ ₂ ₃ ₁ ₄ ₁ ₄
POINTS (x, y, pch, ...) ● → 19 posizione da 1 a 25
ABLINE (h= , lty = "dashed", "dotted") a che valore o numero
AGGIUNGO LINEA ORIZZONT. V= 2 Linea verticale
PAR (mfrow = c(1,1)) default = c(2,2) COME SI DISPONGONO I GRAFICI
DISTRIBUZIONI V.C.
- ddistr(x, parametri distr.) ➔ FUNZ. DI PROBABILITÀ/DENSITÀ
- pdistr(x, parametri distr.) ➔ FUNZ. DI RIPARTIZIONE
- qdistr(x, parametri distr.) ➔ INVERSA FUNZ DI RIPARTIZ (quantile)
- rdistr(m, parametri distr.) ➔ GENERA NUMERI CASUALI secondo la distribuzione
NORMALE
norm(μ,σ2) di default (0,1)
BINOMIALE
binom(m,Θ) Θ PROBABILITÀ
GEOMETRICA
geom(Θ) Θ PROBABILITÀ
POISSON
pois(λ) λ
UNIFORME
unif(a,b) a = min, b = max di default (0,1)
GAMMA
gamma(α,Θ) di default Θ = 1 Shape 1/scale
ESP. NEGATIVA
exp(Θ) di default Θ = 1
CHI QUADRATO
chisq(g) g GRADI DI LIBERTÀ χg2
VALORE ATTESO DISCRETE
E(x) = sum (0:m * ddistr(x, param)) Se so quanto vale E(x) nella distr (ad es. mΘ) posso calcolarlo anche così.
APPROSSIMAZIONI
x̄ ➔ E(x) x̄ = mean (x) s2 ➔ Var(x) s2 = var(x) dove x = rdistr(m, par)
PROBABILITÀ V.C. DISCR.
- P(x = a) ➔ ddist(a, par)
- P(x ≤ a) ➔ pdistr(a, par)
- P(x < a) ➔ pdist (a-1, par)
- P(x > a) ➔ 1 - pdistr(a, par)
- P(a ≤ x ≤ b) ➔ sum (ddist a:b, param)