Dear All: Regarding my question regarding normal table, I will use it as an example for R functions.
many thanks steven On Mon, Feb 23, 2015 at 6:56 AM, Julian Wells <[email protected]> wrote: > One might not use tables to *teach* stat.s, but one may wish to provide > exam candidates with them. > > Julian > > > On 23 Feb 2015, at 11:00, [email protected] wrote: > > > Send R-sig-teaching mailing list submissions to > > [email protected] > > > > To subscribe or unsubscribe via the World Wide Web, visit > > https://stat.ethz.ch/mailman/listinfo/r-sig-teaching > > or, via email, send a message with subject or body 'help' to > > [email protected] > > > > You can reach the person managing the list at > > [email protected] > > > > When replying, please edit your Subject line so it is more specific > > than "Re: Contents of R-sig-teaching digest..." > > > > > > Today's Topics: > > > > 1. Re: Normal Distribution Table (Randall Pruim) > > > > > > ---------------------------------------------------------------------- > > > > Message: 1 > > Date: Mon, 23 Feb 2015 06:15:04 +0000 > > From: Randall Pruim <[email protected]> > > To: Arthur Charpentier <[email protected]> > > Cc: R-sig-teaching <[email protected]> > > Subject: Re: [R-sig-teaching] Normal Distribution Table > > Message-ID: <[email protected]> > > Content-Type: text/plain; charset="UTF-8" > > > > I?m not a fan of probability tables. I don?t use trig or log tables > when for calculus, why should I use normal probability tables when I teach > statistics. > > > > But I am a fan of good R coding and of knitr, and since Arthur wished > for an RMarkdown version of his table and I think there are ways to improve > the R used to generate the table (note the use of outer(), the avoidance of > all loops, and letting the computer calculate sequences), I?ll offer the > following RMarkdown file. It is more complicated than necessary to show > how to include a plot and how to control the table format a bit. A > minimalist version with just the table and no custom formatting would be > shorter. > > > > Anyway, here goes: > > > > > > ```{r include=FALSE} # execute this code, but don?t put anything into > the output > > require(xtable) > > require(grid) # for the plot > > require(mosaic) # for the plot > > trellis.par.set(theme=theme.mosaic()) # change default colors for plot > > big <- seq(0, 3.5, by = 0.1) > > little <- seq(0, 0.09, by = 0.01) > > norm_table <- outer(big, little, function(x,y) pnorm(x+y)) > > row.names(norm_table) <- format(big, digits=1) > > colnames(norm_table) <- format(little, digits=2) > > ``` > > > > The table gives values for $P(Z \le z)$ where $z$ is the sum of the left > and right headers. > > > > ```{r echo=FALSE, fig.width = 7.0, fig.height = 2, fig.keep="last"} > > plotDist("norm", groups = x >= 1, type="h") > > ladd(grid.text(label=expression(P(Z <= z)), x = .2, y = .7)) > > ``` > > > > > > ```{r results="asis", echo=FALSE} > > print( > > xtable( > > norm_table, > > digits=4, # display 4 digits > > align="|r|rrrrrrrrrr|" # additional vertical lines > > ), > > hline.after = c(-1, seq(0, nrow(norm_table), by=4)), # additional > horizontal lines > > comment=FALSE) # avoid latex comment about table > generation > > ``` > > > > On Feb 22, 2015, at 12:02 AM, Arthur Charpentier < > [email protected]<mailto:[email protected]>> wrote: > > > > Hi Steven > > it might be out of scope but a few months ago, I published some codes to > > generate such a table > > see http://freakonometrics.hypotheses.org/9404 > > Arthur > > > > > > > > 2015-02-21 11:49 GMT+01:00 Steven Stoline <[email protected]<mailto: > [email protected]>>: > > > > One more thing; > > > > 3- how to force all output to be in a 4 decimal format. e.g. 1 should > look > > like 1.0000. > > > > thanks > > steve > > ---------- Forwarded message ---------- > > From: Steven Stoline <[email protected]<mailto:[email protected]>> > > Date: Sat, Feb 21, 2015 at 5:37 AM > > Subject: Normal Distribution Table > > To: R-sig-teaching <[email protected]<mailto: > [email protected]>> > > > > > > Dear All: > > > > I am trying to use the below R code to create the standard normal > > distribution table. But I need some helps on the output: > > > > 1- how I can insert one line-space between each two rows. > > > > 2- there is one "<NA>" in the output, how to remove it from the output. > > > > Simply copy-paste the below code into R. > > > > > > Here is the Code: > > ============ > > > > > > columnz<-c(0.00, 0.01, 0.02, 0.03, 0.04, 0.05, 0.06, 0.07, 0.08, 0.09) > > > > > > > > > rowz<-c(0.0,0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9,1.0,1.1,1.2,1.3,1.4,1.5,1.6,1.7,1.8,1.9, > > > > > > > 2.0,2.1,2.2,2.3,2.4,2.5,2.6,2.7,2.8,2.9,3.0,3.1,3.2,3.3,3.4,3.5,3.6,3.7,3.8,3.9,4.0) > > > > > > normal.table<-function(columnz,rowz){ > > > > > > m<-length(rowz) > > > > n<-length(columnz) > > > > > > A<-matrix(NA, nrow = m+1 , ncol = n+1) > > > > > > for (i in (1:m+1)) { > > > > A[i,1]<-" " > > > > } > > > > > > for (j in (1:n+1)) { > > > > A[1,j]<-"------" > > > > } > > > > > > for (i in (1:m)) { > > for (j in (1:n)){ > > > > #### A[i,j]<-round(pnorm(rowz[i]+columnz[j]),4) > > > > A[i+1,j+1]<-round(pnorm(rowz[i]+columnz[j]),4) > > > > > > } > > > > } > > > > > > > > dimnames(A)<-list(c(" ", > > "0.0","0.1","0.2","0.3","0.4","0.5","0.6","0.7","0.8","0.9", > > > > "1.0","1.1","1.2","1.3","1.4","1.5","1.6","1.7","1.8","1.9", > > > > "2.0","2.1","2.2","2.3","2.4","2.5","2.6","2.7","2.8","2.9", > > > > "3.0","3.1","3.2","3.3","3.4","3.5","3.6","3.7","3.8","3.9","4.0"), > > c(" ", " 0.00", " 0.01", " 0.02", " 0.03", " 0.04", " > > 0.05", " 0.06", " 0.07", " 0.08", " 0.09")) > > > > print(A,quote=F) > > > > invisible() > > > > } > > > > normal.table(columnz,rowz) > > > > > > with many thanks > > Steve > > > > -- > > Steven M. Stoline > > 1123 Forest Avenue > > Portland, ME 04112 > > [email protected]<mailto:[email protected]> > > > > > > > > -- > > Steven M. Stoline > > 1123 Forest Avenue > > Portland, ME 04112 > > [email protected] > > > > [[alternative HTML version deleted]] > > > > _______________________________________________ > > [email protected] mailing list > > https://stat.ethz.ch/mailman/listinfo/r-sig-teaching > > > > > > [[alternative HTML version deleted]] > > > > _______________________________________________ > > [email protected]<mailto:[email protected]> > mailing list > > https://stat.ethz.ch/mailman/listinfo/r-sig-teaching > > > > > > [[alternative HTML version deleted]] > > > > > > > > ------------------------------ > > > > Subject: Digest Footer > > > > _______________________________________________ > > R-sig-teaching mailing list > > [email protected] > > https://stat.ethz.ch/mailman/listinfo/r-sig-teaching > > > > > > ------------------------------ > > > > End of R-sig-teaching Digest, Vol 74, Issue 7 > > ********************************************* > > > > _______________________________________________ > [email protected] mailing list > https://stat.ethz.ch/mailman/listinfo/r-sig-teaching > -- Steven M. Stoline 1123 Forest Avenue Portland, ME 04112 [email protected] [[alternative HTML version deleted]] _______________________________________________ [email protected] mailing list https://stat.ethz.ch/mailman/listinfo/r-sig-teaching
