# Andmestik - meeste 10-võistluse tulemused kergejõustiku MM-l Moskavas 2013. aastal # Moskva2013 = read.table("clipboard",sep="\t",dec=",",header=TRUE,row.names=1) Moskva2013 = read.csv("http://www.eau.ee/~ktanel/mmstatistika_koolitus_EMYs_2014/Moskva2013.csv",sep=";",dec=",",header=TRUE,row.names=1) head(Moskva2013) # kuvamaks esimesi (vaikimisi 6) ridu andmestikust # ------------------------------------------------------------------------------------- # ------------------------------------------------------------------------------------- # Korrelatsioonikordajad ja tunnuste vaheliste seoste illustreerimine # # Lisamaterjali leiab Joosep Raudsiku bakalaureusetööst # "Hajuvusdiagrammid ning korrelatsioonimaatriksite illustreerimine statistikapaketis R" # (http://dspace.utlib.ee/dspace/bitstream/handle/10062/31707/raudsik_joosep_2013.pdf) # ------------------------------------------------------------------------------------- Moskva2013_cor <- cor(Moskva2013[,c(-1,-2,-13:-22)]) # sama tulemuse annab ka 'cor(Moskva2013[,c(3:12)])' Moskva2013_cor # ------------------------------------------------------------------------------------- # Funktsioon 'corrplot' # ------------------------------------------------------------------------------------- # Vajadusel installeerige lisapakett corrplot # install.packages("corrplot") library(corrplot) corrplot(Moskva2013_cor) # Erinevaid funktsiooni corrplot võimalusi par(mfrow=c(2,2)) par(mar=c(2,4,1,1)) corrplot(Moskva2013_cor, method="square", tl.col="black", tl.cex=0.7) corrplot(Moskva2013_cor, method="square", order="hclust", tl.col="black", tl.cex=0.7) corrplot(Moskva2013_cor, method="square", order="FPC", tl.col="black", tl.cex=0.7) corrplot(Moskva2013_cor, method="square", order="AOE", tl.col="black", tl.cex=0.7) par(mfrow=c(1,1)) col3 <- colorRampPalette(c("red", "white", "blue")) corrplot(Moskva2013_cor, order="hclust", col=col3(100), addrect=4, tl.col="black", tl.cex=0.9) wb <- colorRampPalette(c("white", "black")) corrplot(Moskva2013_cor, col = wb(2), order="hclust", outline=TRUE, cl.pos="n", tl.col="black", tl.cex=0.9) # ------------------------------------------------------------------------------------- # Hajuvusdiagrammide maatriks - funktsioon 'scatterplotMatrix' # ------------------------------------------------------------------------------------- # install.packages("car") library(car) scatterplotMatrix(Moskva2013[,c(-1,-13:-22)]) scatterplotMatrix(Moskva2013[,c(2:4)], smoother=FALSE, diagonal="histogram") # ------------------------------------------------------------------------------------- # Hajuvusdiagrammide maatriks - funktsioon 'pairs' # ------------------------------------------------------------------------------------- pairs(Moskva2013[,c(-1,-13:-22)]) # vaikimisi joonis # Aga erinevad paneelid on ise kujundatavad ... panel.hist <- function(x, ...) { usr <- par("usr"); on.exit(par(usr)) par(usr = c(usr[1:2], 0, 1.5) ) h <- hist(x, plot = FALSE) breaks <- h$breaks; nB <- length(breaks) y <- h$counts; y <- y/max(y) rect(breaks[-nB], 0, breaks[-1], y, col="cyan", ...) } panel.cor <- function(x, y, digits=2, prefix="", cex.cor, ...) { usr <- par("usr"); on.exit(par(usr)) par(usr = c(0, 1, 0, 1)) r <- abs(cor(x, y)) txt <- format(c(cor(x, y), 0.123456789), digits=digits)[1] txt <- paste(prefix, txt, sep="") if(missing(cex.cor)) cex.cor <- 0.8/strwidth(txt) text(0.5, 0.5, txt, cex = cex.cor * r) } pairs(Moskva2013[,c(2:4)], lower.panel=panel.smooth, diag.panel=panel.hist, upper.panel=panel.cor) # ------------------------------------------------------------------------------------- # Veel üks näide R-ga kaasas oleva vaikimisi andmestikuga - seosed gruppide kaupa pairs(iris[1:4], main = "Anderson's Iris Data -- 3 species", pch = 21, bg = c("red", "green3", "blue")[unclass(iris$Species)]) # ------------------------------------------------------------------------------------- # PS. R-i graafikavõimeluste jmt kohta vt http://www-1.ms.ut.ee/mart/R/Rgraafika.html # -------------------------------------------------------------------------------------