R version 3.0.2 (2013-09-25) -- "Frisbee Sailing" Copyright (C) 2013 The R Foundation for Statistical Computing Platform: i686-pc-linux-gnu (32-bit) R is free software and comes with ABSOLUTELY NO WARRANTY. You are welcome to redistribute it under certain conditions. Type 'license()' or 'licence()' for distribution details. R is a collaborative project with many contributors. Type 'contributors()' for more information and 'citation()' on how to cite R or R packages in publications. Type 'demo()' for some demos, 'help()' for on-line help, or 'help.start()' for an HTML browser interface to help. Type 'q()' to quit R. > x <- c(0.114,0.111,0.102,0.110,0.110,0.110,0.106,0.108,0.098,0.112,0.110,0.108,0.112,0.111,0.109,0.108,0.108,0.109,0.105,0.108,0.108,0.113,0.114,0.113,0.108,0.110,0.110,0.110,0.110,0.108,0.108,0.108,0.098,0.110,0.112,0.110,0.110,0.110,0.106,0.106,0.110,0.101,0.100) > par2 = '40' > par1 = '24' > par2 <- '40' > par1 <- '24' > #'GNU S' R Code compiled by R2WASP v. 1.2.327 () > #Author: root > #To cite this work: Wessa P., (2013), Maximum-likelihood Weibull Distribution Fitting (v1.0.3) in Free Statistics Software (v$_version), Office for Research Development and Education, URL http://www.wessa.net/rwasp_fitdistrweibull.wasp/ > #Source of accompanying publication: Office for Research, Development, and Education > # > library(MASS) > PPCCWeibull <- function(shape, scale, x) + { + x <- sort(x) + pp <- ppoints(x) + cor(qweibull(pp, shape=shape, scale=scale), x) + } > par1 <- as.numeric(par1) > par2 <- as.numeric(par2) > if (par1 < 0.1) par1 <- 0.1 > if (par1 > 50) par1 <- 50 > if (par2 < 0.1) par2 <- 0.1 > if (par2 > 50) par2 <- 50 > par1h <- par1*10 > par2h <- par2*10 > sortx <- sort(x) > c <- array(NA,dim=c(par2h)) > for (i in par1h:par2h) + { + c[i] <- cor(qweibull(ppoints(x), shape=i/10,scale=2),sortx) + } > postscript(file="/var/fisher/rcomp/tmp/13bmn1387921328.ps",horizontal=F,onefile=F,pagecentre=F,paper="special",width=8.3333333333333,height=5.5555555555556) > plot((par1h:par2h)/10,c[par1h:par2h],xlab='shape',ylab='correlation',main='PPCC Plot - Weibull') > dev.off() null device 1 > f<-fitdistr(x, 'weibull') There were 12 warnings (use warnings() to see them) > f$estimate shape scale 39.7754642 0.1100829 > f$sd shape scale 4.8663783149 0.0004392344 > xlab <- paste('Weibull(shape=',round(f$estimate[[1]],2)) > xlab <- paste(xlab,', scale=') > xlab <- paste(xlab,round(f$estimate[[2]],2)) > xlab <- paste(xlab,')') > postscript(file="/var/fisher/rcomp/tmp/2r0an1387921328.ps",horizontal=F,onefile=F,pagecentre=F,paper="special",width=8.3333333333333,height=5.5555555555556) > qqplot(qweibull(ppoints(x), shape=f$estimate[[1]], scale=f$estimate[[2]]), x, main='QQ plot (Weibull)', xlab=xlab ) > grid() > dev.off() null device 1 > > #Note: the /var/fisher/rcomp/createtable file can be downloaded at http://www.wessa.net/cretab > load(file="/var/fisher/rcomp/createtable") > > a<-table.start() > a<-table.row.start(a) > a<-table.element(a,'Parameter',1,TRUE) > a<-table.element(a,'Estimated Value',1,TRUE) > a<-table.element(a,'Standard Deviation',1,TRUE) > a<-table.row.end(a) > a<-table.row.start(a) > a<-table.element(a,'shape',header=TRUE) > a<-table.element(a,f$estimate[1]) > a<-table.element(a,f$sd[1]) > a<-table.row.end(a) > a<-table.row.start(a) > a<-table.element(a,'scale',header=TRUE) > a<-table.element(a,f$estimate[2]) > a<-table.element(a,f$sd[2]) > a<-table.row.end(a) > a<-table.end(a) > table.save(a,file="/var/fisher/rcomp/tmp/3oj4r1387921328.tab") > > try(system("convert tmp/13bmn1387921328.ps tmp/13bmn1387921328.png",intern=TRUE)) character(0) > try(system("convert tmp/2r0an1387921328.ps tmp/2r0an1387921328.png",intern=TRUE)) character(0) > > > proc.time() user system elapsed 2.730 0.624 3.371