[R] Non-Parametric Adventures in R

Gabor Grothendieck ggrothendieck at gmail.com
Wed Oct 6 13:44:23 CEST 2010


On Wed, Oct 6, 2010 at 7:08 AM, Jamesp <james.jrp015 at gmail.com> wrote:
>
> 6b)  Getting pretty close with some nasty code.  I think I could copy and
> paste to openoffice calc and make it pretty fairly easily at this point.
>
> I should make a function to clean up the repeated part at least.  Overall, I
> think I could make a function that applies another function to generate a
> table.  It might be something like:
>
> rcTableCreate(c(4:5), c(6:8), dataframe, function)
>
> So the first input is rows, the second is columns, the third is the data
> frame(and whatever else might work) I'm pulling from, and function will be a
> function that creates a mini-table that I'm trying to repeat.
>
> My function that creates a block would be
>
> cell = function(r,c)
> {
>  temp <- table(X[,r],X[,c])
>  temp <- cbind(temp,prop.table(temp))
>  temp <- subset(temp, select=c(2,4))
>  colnames(temp) <- c("Num","%")
>  return(temp)
> }
>
> I'm going to test that out after I post here, but my code that is working at
> the moment follows
>
> ---------------------------------------------------------------------
> temp <- table(X[,3],X[,197])
> temp <- cbind(temp,prop.table(temp))
> temp <- subset(temp, select=c(2,4))
> colnames(temp) <- c("Num","%")
>
>  for (i in 198:229)
>  {
>   temp2 <- table(X[,3],X[,i])
>   temp2 <- cbind(temp2,prop.table(temp2))
>   temp2 <- subset(temp2, select=c(2,4))
>   colnames(temp2) <- c("Num","%")
>   temp <- cbind(temp,temp2)
>  }
>
> for (j in 4:5)
> {
>  temp2 <- table(X[,j],X[,197])
>  temp2 <- cbind(temp2,prop.table(temp2))
>  temp2 <- subset(temp2, select=c(2,4))
>  colnames(temp2) <- c("Num","%")
>  for (i in 198:229)
>  {
>   temp3 <- table(X[,j],X[,i])
>   temp3 <- cbind(temp3,prop.table(temp3))
>   temp3 <- subset(temp3, select=c(2,4))
>   colnames(temp3) <- c("Num","%")
>   temp2 <- cbind(temp2,temp3)
>  }
>  temp <- rbind(temp,temp2)
> }
> print(temp, digits = 1)
> --------------------------------------------------------------------
>
> I might be better off printing values instead of forming the table, but
> there are
> formatting issues I don't know how to solve at the moment.  Unfortunately, I
> think
> I'm taking the roundabout route to get this output, but that may be because
> it's 6am.
> Put into Calc and back out again, it looks something like this.
>
>                            Num    %     Num        %    Num         %
> Male                            7       0.05    36      0.24    2       0.01
> Female                  2       0.01    16      0.11    0       0
> < HS                            3       0.02    14      0.09    0       0
> HighSchool/GED          1       0.01    13      0.09    0       0
> some college            2       0.01    19      0.13    1       0.01
> BA/BS                   3       0.02    4       0.03    1       0.01
>>BS                             0       0       2       0.01    0       0
> African American                9       0.06    39      0.26    1       0.01
> White,Non-Hispanic      0       0       13      0.09    1       0.01
> Other                   0       0       0       0       0       0
>
> --
> View this message in context: http://r.789695.n4.nabble.com/Non-Parametric-Adventures-in-R-tp2952754p2964666.html
> Sent from the R help mailing list archive at Nabble.com.
>
> ______________________________________________
> R-help at 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.
>

You might want to look at:

library(Hmisc)
example(summary.formula)

library(gmodels)
example(CrossTable)

library(remix)
example(remix)



-- 
Statistics & Software Consulting
GKX Group, GKX Associates Inc.
tel: 1-877-GKX-GROUP
email: ggrothendieck at gmail.com



More information about the R-help mailing list