Hi I would like to transform a data frame like Subject Item Score Subject 1 Item 1 1 Subject 1 Item 2 0 Subject 1 Item 3 1 Subject 2 Item 1 1 Subject 2 Item 2 1 Subject 2 Item 3 0 .... *to * Subject Item1 Item2 Item3 .....Item N Subject1 1 0 1 Subject2 1 1 0 ........ SubjectP.. Apologize for the simple nature of my query but I am stuck. How can I do this transformation? Regards Ajay Websites- http://decisionstats.com http://dudeofdata.com Linkedin- www.linkedin.com/in/ajayohri On Sat, Oct 30, 2010 at 2:39 PM, Alaios <alaios@yahoo.com> wrote:> Hello everyone. > I have written quite a big function that at the end correctly returns the > values > I want. I found a rare exception that I want to cover also. The easier for > me > would be to write something like that > > > function(){ > > if (rare exception happened) > return that value > > # The comes the code for normal execution > # ... > # ... > return value # Normal values to return > > } > > > > Would that be feasible with R or two returns statements are not accepted? > > Regards > Alex > > > > [[alternative HTML version deleted]] > > ______________________________________________ > 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. >[[alternative HTML version deleted]]
Santosh Srinivas
2010-Oct-30 11:50 UTC
[R] transforming a dataset for association analysis
A more usable problem input would definitely help ... use dput to send a reproducible sample to the group Think the below should solve your problem> read.csv("Book1.csv")Subject Item Score 1 Subject 1 Item 1 1 2 Subject 1 Item 2 0 3 Subject 1 Item 3 1 4 Subject 2 Item 1 1 5 Subject 2 Item 2 1 6 Subject 2 Item 3 0> library("reshape2") > tDat.m <- melt(tDat)> tDatCast <- acast(tDat.m,Subject~Item) > tDatCastItem 1 Item 2 Item 3 Subject 1 1 0 1 Subject 2 1 1 0 -----Original Message----- From: r-help-bounces at r-project.org [mailto:r-help-bounces at r-project.org] On Behalf Of Ajay Ohri Sent: 30 October 2010 16:27 To: Rhelp Subject: [R] transforming a dataset for association analysis Hi I would like to transform a data frame like Subject Item Score Subject 1 Item 1 1 Subject 1 Item 2 0 Subject 1 Item 3 1 Subject 2 Item 1 1 Subject 2 Item 2 1 Subject 2 Item 3 0 .... *to * Subject Item1 Item2 Item3 .....Item N Subject1 1 0 1 Subject2 1 1 0 ........ SubjectP.. Apologize for the simple nature of my query but I am stuck. How can I do this transformation? Regards Ajay Websites- http://decisionstats.com http://dudeofdata.com Linkedin- www.linkedin.com/in/ajayohri On Sat, Oct 30, 2010 at 2:39 PM, Alaios <alaios at yahoo.com> wrote:> Hello everyone. > I have written quite a big function that at the end correctly returns the > values > I want. I found a rare exception that I want to cover also. The easier for > me > would be to write something like that > > > function(){ > > if (rare exception happened) > return that value > > # The comes the code for normal execution > # ... > # ... > return value # Normal values to return > > } > > > > Would that be feasible with R or two returns statements are not accepted? > > Regards > Alex > > > > [[alternative HTML version deleted]] > > ______________________________________________ > 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. >[[alternative HTML version deleted]] ______________________________________________ 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.
On 30.10.2010 13:50 (UTC+1), Santosh Srinivas wrote:> A more usable problem input would definitely help ... use dput to send a > reproducible sample to the group > > Think the below should solve your problem > >> read.csv("Book1.csv") > Subject Item Score > 1 Subject 1 Item 1 1 > 2 Subject 1 Item 2 0 > 3 Subject 1 Item 3 1 > 4 Subject 2 Item 1 1 > 5 Subject 2 Item 2 1 > 6 Subject 2 Item 3 0 > >> library("reshape2") >> tDat.m<- melt(tDat) > >> tDatCast<- acast(tDat.m,Subject~Item) >> tDatCast > Item 1 Item 2 Item 3 > Subject 1 1 0 1 > Subject 2 1 1 0# Or without using package reshape2, only function reshape from stats: df <- data.frame(Subject c("Subject 1","Subject 1","Subject 1","Subject 1", "Subject 2","Subject 2","Subject 2","Subject 2"), Item c("Item 1","Item 2","Item 3","Item 4", "Item 1","Item 2","Item 3","Item 4"), Score = c(1,0,1,1,1,1,0,0)) df.wide <- reshape(df, idvar="Subject", timevar="Item", direction="wide") names(df.wide) <- c("Subject",unique(as.character(df$Item))) df.wide Subject Item 1 Item 2 Item 3 Item 4 1 Subject 1 1 0 1 1 5 Subject 2 1 1 0 0> -----Original Message----- > From: r-help-bounces at r-project.org [mailto:r-help-bounces at r-project.org] On > Behalf Of Ajay Ohri > Sent: 30 October 2010 16:27 > To: Rhelp > Subject: [R] transforming a dataset for association analysis > > Hi > > I would like to transform a data frame like > > Subject Item Score > Subject 1 Item 1 1 > Subject 1 Item 2 0 > Subject 1 Item 3 1 > Subject 2 Item 1 1 > Subject 2 Item 2 1 > Subject 2 Item 3 0 > .... > *to * > > Subject Item1 Item2 Item3 .....Item N > Subject1 1 0 1 > Subject2 1 1 0 > ........ > SubjectP.. > > Apologize for the simple nature of my query but I am stuck. How can I do > this transformation? > > Regards > > Ajay > > > > Websites- > http://decisionstats.com > http://dudeofdata.com > > > Linkedin- www.linkedin.com/in/ajayohri > > > > > On Sat, Oct 30, 2010 at 2:39 PM, Alaios<alaios at yahoo.com> wrote: > >> Hello everyone. >> I have written quite a big function that at the end correctly returns the >> values >> I want. I found a rare exception that I want to cover also. The easier for >> me >> would be to write something like that >> >> >> function(){ >> >> if (rare exception happened) >> return that value >> >> # The comes the code for normal execution >> # ... >> # ... >> return value # Normal values to return >> >> } >> >> >> Would that be feasible with R or two returns statements are not accepted? >> >> Regards >> Alex