|
R은 보고입니다. Google에 가셔서 "cran R skewness"를 입력하시면 되구요. 아래 code를 그냥 복사해서 돌려보세요.R의 무한함에 감사할 것입니다. Part 1은 수동으로, Part2는 자동으로 계산된 결과이구요, 선물로 멋진 graph도 드립니다. 열공하세요. ###Part1 y<-rnorm(100) hist(y, prob=T) mykurtosis <- function(x) { m4 <- mean((x-mean(x))^4) kurt <- m4/(sd(x)^4)-3 kurt } mykurtosis(y) myskewness <- function(x) { m3 <- mean((x-mean(x))^3) skew <- m3/(sd(x)^3) skew } myskewness(y) install.packages("fBasics") library(fBasics) kurtosis(y) skewness(y) hist(y) #source http://cran.r-project.org/doc/contrib/Ricci-distributions-en.pdf #####Part2 x <- rnorm( 1000 , mean = sample( c(0, 3), size = 1000, prob = c(.4, .6), replace = TRUE ) ) par( las = 1, mar = c(3,3,4,1)+.1 ) h <- hist( x, plot = FALSE, breaks = 15 ) d <- density( x ) plot( h , border = NA, freq = FALSE, xlab = "", ylab = "", main= "Use of clipping and translucency" ) usr <- par( "usr" ) ncolors <- 100 dy <- ( usr[4] - usr[3] ) / ncolors colors <- colorRampPalette( c("yellow","orange","red") )(ncolors) abline( h = axTicks(2) , col = "gray", lwd = .5 ) for( i in 1:ncolors){ clip( usr[1], usr[2], usr[3] + (i-1) * dy, usr[3] + i*dy ) plot( h, add = TRUE, axes = FALSE, ylab = "", xlab = "", col = colors[i], border = NA, freq = FALSE) } do.call( clip, as.list( usr) ) plot( h, add = TRUE, lwd = .5 , freq = FALSE, xlab = "", ylab = "", axes = FALSE ) lines( d, lwd = 4, col = "#22222288" ) rug( x, col = "#00000088" ) box() kurtosis(x) skewness(x) #source http://addictedtor.free.fr/graphiques/RGraphGallery.php?graph=151 |
|