Oszlopdiagram: barplot(x) Kördiagram: pie(x) Hisztogram: hist(x, freq=FALSE), histogram(~ x | kateg) Pontdiagram: plot(x, y) Boxplot: boxplot(x) vagy boxplot(x ~ kateg) Q-Q plot (normálisra): qqnorm(x), qqline(x, distribution = qnorm) Leíró statisztika: Summary(adatok) Gyakoriság: summary(kateg) Relatív gyakoriság: summary(kateg)/length(kateg) Átlag: mean(x, na.rm=TRUE) # hiányzó adatok átugrása tapply(x, list(kateg), mean, na.rm=TRUE) # kateg szerint csoportosított átlagok aggregate(x, list(kateg), mean, na.rm=TRUE) # ua. Medián: median(x, na.rm=TRUE) Kvarilisek: quantile(x, na.rm=TRUE) # min, 1. kvantilis, medián, 3. kvantilis, max Kvantilisek: quantile(x, c(p1,...,pk), na.rm=TRUE) # p1-,...pk-kvantilisek Mintaterjedelem: max(x, na.rm=TRUE) - min(x, na.rm=TRUE) Variancia: var(x, na.rm=TRUE) Szórás: sd(x, na.rm=TRUE) k-adik centrális momentum: moment(x,order=k,center=TRUE) # moments csomag kell hozzá Kovariancia: cov(x, y, use="complete.obs") Korreláció: cor(x, y, use="complete.obs") Spearman-korreláció: cor(x, y, method="spearman") Egymintás t: t.test(x, alternative='two.sided'/'less'/'greater', mu=mu_0, conf.level=1-alfa) Páros t: t.test(x, y, paired=TRUE) # utóbbi paraméter nélkül kétmintás Kétmintás t: t.test(x, y, conf.level=1-alfa, var.equal=TRUE) vagy t.test(x~kateg, var.equal=TRUE) Welch: t.test(x, y) vagy t.test(x~kateg) F: var.test(x ~ kateg) Levene: leveneTest(x, kateg, center=median/mean) Bartlett: bartlett.test(x~kateg) Khi^2 eloszlásra: chisq.test(x, p) # p valószínűségvektor, pl. p = rep(1/length(x), length(x)) Khi^2 függetlenségre: chisq.test(x, y) # ha x mátrix, y nem kell, pl.chisq.test(xtabs(~kateg1+kateg2)) xtabs(~x+y) # kontingenciatábla chisq.test(x, y)$expected # elvárt értékek Egymintás Wilcoxon: wilcox.test(x, m=m_0) Páros Wilcoxon: wilcox.test(x, y, paired=TRUE) Mann-Whitney (kétmintás Wilcoxon): wilcox.test(x, y) Kruskal-Wallis: kruskal.test(x ~ kateg) Kolmogorov-Smirnov: ks.test(x, eloszlas) # pl normalitásra ks.test(x, "pnorm", mean(x, na.rm=TRUE), sd(x, na.rm=TRUE)) Kétmintás K-S: ks.test(x, y) Shapiro-Wilk: shapiro.test(x) Egymintás előjel (binomiális): binom.test(x, n, p = 0.5) # x: 1-esek száma, n: elemszám Futam: runs.test(x) # tseries csomagban Korrelációs tesztek: cor.test(x, y, method = "pearson"/"spearman", exact = FALSE) Egyszempontos varianciaanalízis: am=aov(x ~ factor(kateg)) vagy am=lm(x ~ factor(kateg)) Levene: leveneTest(x, kateg, center=median/mean) ANOVA modell és teszt: anova(am) vagy summary(am) # csak ANOVA teszt: oneway.test(x ~ kateg, var.equal = TRUE/FALSE) # welch is post hoc: pl. TukeyHSD(am) vagy pairwise.t.test(x,kateg) Regresszióanalízis: linm=lm(y~x_1+...+x_r) vagy aov(y~x_1+...+x_r) modell: summary(linm) ANOVA: anova(linm) vagy cor.test(x, y, method="pearson") # egyváltozós esetben négyzetösszgek: SST=sum(anova(linm)["Sum Sq"]) SSE=anova(linm)["Residuals","Sum Sq"] SSR=SST-SSE ábra: plot(y,x) abline(linm) # egyváltozós esetben előrejelzés: predict(linm, data.frame(x_1,...,x_r)) Főkomponens analízis: pc=princomp(~x_1+...+x_r, cor=TRUE/FALSE) summary(pc) pc$sd^2 # főkomponensek szórásnégyzetei screeplot(pc) # ua. ábrán loadings(pc) # átviteli mátrix pc$scores # főkomponensek Faktoranalízis (maximum likelihood módszer): fact=factanal(~x_1+...+x_r, factors=k, rotation="varimax", scores="none") fact fact$loadings # átviteli mátrix fact$rotmat # forgatás mátrixa fact$scores[,i] # i-edik faktorkomponens Főfaktor analízis (faktoranalízis modelljének megoldása főkomponensanalízissel): pc=princomp(~x_1+...+x_r, cor=TRUE/FALSE) t(t(pc$loadings[,1:k])*pc$sd[1:k]) # átviteli mátrix k faktorkomponens esetén t(t(pc$scores[,1:k])/pc$sd[1:k]) # a k főfaktorkomponens Diszkriminancia analízis: da=lda(kateg~x_1+...+x_r) da da$scaling # diszkriminancia függvények együtthatói pred=predict(da, data.frame(x_1,...,x_r))$class # előrejelzett csoportbatartozás table(kateg, pred, dnn=c("original", "predicted"), useNA = "ifany") # klasszifikációs tábla mean(kateg==pred, na.rm = TRUE) # előrejelzés pontossága scatterplot(y1~y2 | kateg, reg.line=FALSE, smooth=FALSE, boxplots=FALSE) # eredeti szerinti ábra scatterplot(y1~y2 | pred, reg.line=FALSE, smooth=FALSE, boxplots=FALSE) # előrejelzés szerinti ábra, ha nincs hiányzó adat biplot(princomp(model.matrix(~-1+x_1+...+x_r)), xlabs = as.character(predict(da)$class)) # előrejelzés szerinti ábra Logisztikus regresszió: lr= glm(kateg ~ x_1+...+x_r, family=binomial(logit)) summary(lr) predp=predict(lr, data.frame(x_1,...,x_r)) # log(p/1-p) előrejelzett értéke pred2=predp > rep(0,length(predp)) table (kateg, pred2, dnn=c("original", "predicted"), useNA = "ifany") # klasszifikációs tábla k-közép klaszter: kcl=KMeans(model.matrix(~-1+x_1+...+x_r), centers = k) kcl kcl$cluster # klaszterekbe tartozás kcl$size # klaszter méretek hierarchikus klaszter: hcl=hclust(dist(model.matrix(~-1+x_1+...+x_r)), method="ward"/"single"/"complete"/"average"/"mcquitty"/"median"/"centroid") plot(hcl) # dendrogram summary(as.factor(cutree(hcl, k))) # klaszter méretek k klaszter esetén