On 07/07/2012 03:23 AM, Greeknovice wrote:
Hi,
I 'm a novice user of R statistics and my hands-on experience with it is
minimal.
I want to create a table for my MBA course assignment that looks like the
ones that SPSS and MS Excel produces ,the data that the table has to include
are the following :

table(agec)
agec
   1   2   3
749 160  32
x=table(agec)
x
agec
   1   2   3
749 160  32

prop.table(x)
agec
          1          2          3
0.79596174 0.17003188 0.03400638
prop.test(749,941)

         1-sample proportions test with continuity correction

data:  749 out of 941, null probability 0.5
X-squared = 328.5186, df = 1, p-value<  2.2e-16
alternative hypothesis: true p is not equal to 0.5
95 percent confidence interval:
  0.7684801 0.8209873
sample estimates:
         p
0.7959617

prop.test(160,941)

         1-sample proportions test with continuity correction

data:  160 out of 941, null probability 0.5
X-squared = 408.5016, df = 1, p-value<  2.2e-16
alternative hypothesis: true p is not equal to 0.5
95 percent confidence interval:
  0.1468831 0.1959230
sample estimates:
         p
0.1700319

prop.test(32,941)

         1-sample proportions test with continuity correction

data:  32 out of 941, null probability 0.5
X-squared = 815.4899, df = 1, p-value<  2.2e-16
alternative hypothesis: true p is not equal to 0.5
95 percent confidence interval:
  0.02374674 0.04822644
sample estimates:
          p
0.03400638
This "percentages and confidence intrevals"  table should be  in an image
file format since I have to upload it to a wiki page.
Is there a specific command or even a series of commands I can use in order
to extract this "graphics" table automatically, or I have to create it
manually using Excel for example?

Hi Greeknovice,
Combining results from different functions into a specified format is a common problem in R. As you noted, it has to look like some default format used in another system. The flexibility of R allows you to do this, but you have to write a function or two like this:

table_with_prop_test<-function(x) {
 counts<-table(x)
 ncounts<-length(counts)
 totalx<-sum(counts)
 pcts<-round(100*counts/totalx,1)
 X2<-df<-p<-lcl<-ucl<-rep(0,ncounts)
 for(i in 1:ncounts) {
  proptest<-prop.test(counts[i],totalx)
  X2[i]<-round(proptest$statistic,2)
  df[i]<-proptest$parameter
  p[i]<-round(proptest$p.value,3)
  lcl[i]<-round(proptest$conf.int[1],3)
  ucl[i]<-round(proptest$conf.int[2],3)
 }
 tptmat<-cbind(counts,pcts,X2,df,p,lcl,ucl)
 return(tptmat)
}

Then if you want to turn the result into an image, you can do something like this:

library(plotrix)
png("table_with_prop_test.png",height=200)
plot(1:5,type="n",axes=FALSE,xlab="",ylab="")
addtable2plot(1,3,table_with_prop_test(x),
 display.rownames=TRUE)
dev.off()

Jim

______________________________________________
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.

Reply via email to