Just using the reshape() function in base R: df.long = reshape(df, varying=list(names(df)[4:7]), direction="long")
This also gives two extra columns ("time" and "id") can can be dropped. Andy > -----Original Message----- > From: r-help-boun...@r-project.org > [mailto:r-help-boun...@r-project.org] On Behalf Of R. Michael Weylandt > Sent: Tuesday, March 06, 2012 8:45 AM > To: mails > Cc: r-help@r-project.org > Subject: Re: [R] Help on reshape function > > library(reshape2) > > melt(df, id.vars = c("ID1", "ID2", "ID3"))[, -4] > # To drop an extraneous column (but you should take a look and see > what it is for future reference) > > Michael > > On Tue, Mar 6, 2012 at 6:17 AM, mails <mails00...@gmail.com> wrote: > > Hello, > > > > > > I am trying to reshape a data.frame in wide format into long format. > > Although in the reshape R documentation > > they programmer list some examples I am struggling to bring > my data.frame > > into long and then transform it back into wide format. The > data.frame I look > > at is: > > > > > > df <- data.frame(ID1 = c(1,1,1,1,1,1,1,1,1), ID2 = c("A", > "A", "A", "B", > > "B", "B", "C", "C", "C"), > > > > ID3 = c("E", "E", "E", "E", > "E", "E", "E", "E", "E"), > > > > X1 = c(1,4,3,5,2,4,6,4,2), > X2 = c(6,8,9,6,7,8,9,6,7), > > > > X3 = c(7,6,7,5,6,5,6,7,5), > X4 = c(1,2,1,2,3,1,2,1,2)) > > > >> df > > ID1 ID2 ID3 X1 X2 X3 X4 > > 1 1 A E 1 6 7 1 > > 2 1 A E 4 8 6 2 > > 3 1 A E 3 9 7 1 > > 4 1 B E 5 6 5 2 > > 5 1 B E 2 7 6 3 > > 6 1 B E 4 8 5 1 > > 7 1 C E 6 9 6 2 > > 8 1 C E 4 6 7 1 > > 9 1 C E 2 7 5 2 > > > > I want to use the reshape function to get the following result: > > > >> df > > ID1 ID2 ID3 X > > 1 1 A E 1 > > 2 1 A E 4 > > 3 1 A E 3 > > 4 1 B E 5 > > 5 1 B E 2 > > 6 1 B E 4 > > 7 1 C E 6 > > 8 1 C E 4 > > 9 1 C E 2 > > > > 10 1 A E 6 > > 11 1 A E 8 > > 12 1 A E 9 > > 13 1 B E 6 > > 14 1 B E 7 > > 15 1 B E 8 > > 16 1 C E 9 > > 17 1 C E 6 > > 18 1 C E 7 > > > > 19 1 A E 7 > > 20 1 A E 6 > > 21 1 A E 7 > > 22 1 B E 5 > > 23 1 B E 6 > > 24 1 B E 5 > > 25 1 C E 6 > > 26 1 C E 7 > > 27 1 C E 5 > > > > 28 1 A E 1 > > 29 1 A E 2 > > 30 1 A E 1 > > 31 1 B E 2 > > 32 1 B E 3 > > 33 1 B E 1 > > 34 1 C E 2 > > 35 1 C E 1 > > 36 1 C E 2 > > > > > > Can anyone help? > > > > Cheers > > > > > > > > -- > > View this message in context: > http://r.789695.n4.nabble.com/Help-on-reshape-function-tp44494 64p4449464.html > > Sent from the R help mailing list archive at Nabble.com. > > > > ______________________________________________ > > 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. > > ______________________________________________ > 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. > Notice: This e-mail message, together with any attachme...{{dropped:11}} ______________________________________________ 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.