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

Reply via email to