An embedded and charset-unspecified text was scrubbed... Name: not available Url: https://stat.ethz.ch/pipermail/r-help/attachments/20080320/30de4ef6/attachment.ksh
Break up a data frame
4 messages · Ravi S. Shankar, jim holtman, Henrique Dallazuanna +1 more
Is this close to what you want?
x <- read.table('clipboard')
x
V1 V2 V3 V4 1 xyz 01/03/2007 15.25 USD 2 xyz 01/04/2007 15.32 USD 3 xyz 01/02/2008 23.22 USD 4 abc 01/03/2007 45.20 EUR 5 abc 01/04/2007 45.00 EUR 6 abc 01/02/2008 68.33 EUR
x.m <- melt(x)
Using V1, V2, V4 as id variables
x
V1 V2 V3 V4 1 xyz 01/03/2007 15.25 USD 2 xyz 01/04/2007 15.32 USD 3 xyz 01/02/2008 23.22 USD 4 abc 01/03/2007 45.20 EUR 5 abc 01/04/2007 45.00 EUR 6 abc 01/02/2008 68.33 EUR
cast(x.m, V2~V4)
V2 EUR USD 1 01/02/2008 68.33 23.22 2 01/03/2007 45.20 15.25 3 01/04/2007 45.00 15.32
On Thu, Mar 20, 2008 at 1:22 AM, Ravi S. Shankar <ravis at ambaresearch.com> wrote:
Hi R users,
I have a dataframe in the below format
xyz 01/03/2007 15.25 USD
xyz 01/04/2007 15.32 USD
xyz 01/02/2008 23.22 USD
abc 01/03/2007 45.2 EUR
abc 01/04/2007 45.00 EUR
abc 01/02/2008 68.33 EUR
I want to change the above data into the below format
xyz 01/03/2007 15.25 USD abc
01/03/2007 45.2 EUR
xyz 01/04/2007 15.32 USD abc
01/04/2007 45.00 EUR
xyz 01/02/2008 23.22 USD abc
01/02/2008 68.33 EUR
Any help would be welcome
Thank you
Ravi
This e-mail may contain confidential and/or privileged i...{{dropped:13}}
______________________________________________ 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.
Jim Holtman Cincinnati, OH +1 513 646 9390 What is the problem you are trying to solve?
Or perhaps: xtabs(V3 ~ V2 + V4, data=x)
On 20/03/2008, Ravi S. Shankar <ravis at ambaresearch.com> wrote:
Hi R users,
I have a dataframe in the below format
xyz 01/03/2007 15.25 USD
xyz 01/04/2007 15.32 USD
xyz 01/02/2008 23.22 USD
abc 01/03/2007 45.2 EUR
abc 01/04/2007 45.00 EUR
abc 01/02/2008 68.33 EUR
I want to change the above data into the below format
xyz 01/03/2007 15.25 USD abc
01/03/2007 45.2 EUR
xyz 01/04/2007 15.32 USD abc
01/04/2007 45.00 EUR
xyz 01/02/2008 23.22 USD abc
01/02/2008 68.33 EUR
Any help would be welcome
Thank you
Ravi
This e-mail may contain confidential and/or privileged i...{{dropped:13}}
______________________________________________ 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.
Henrique Dallazuanna Curitiba-Paran?-Brasil 25? 25' 40" S 49? 16' 22" O
"Ravi S. Shankar" <ravis at ambaresearch.com> wrote in news:A36876D3F8A5734FA84A4338135E7CC3033BE60E at BAN-MAILSRV03.Amba.com:
Hi R users,
I have a dataframe in the below format
xyz 01/03/2007 15.25 USD
xyz 01/04/2007 15.32 USD
xyz 01/02/2008 23.22 USD
abc 01/03/2007 45.2 EUR
abc 01/04/2007 45.00 EUR
abc 01/02/2008 68.33 EUR
I want to change the above data into the below format
xyz 01/03/2007 15.25 USD
abc
01/03/2007 45.2 EUR
xyz 01/04/2007 15.32 USD
abc
01/04/2007 45.00 EUR
xyz 01/02/2008 23.22 USD
abc
01/02/2008 68.33 EUR
Seeing what appeared to be wordwrap, I interpreted your request as asking for display of "xyz" rows adjacent to "abc" rows. If that is the case, then this seems to work for the toy example:
xz <- read.table("clipboard")
xz
V1 V2 V3 V4 1 xyz 01/03/2007 15.25 USD 2 xyz 01/04/2007 15.32 USD 3 xyz 01/02/2008 23.22 USD 4 abc 01/03/2007 45.20 EUR 5 abc 01/04/2007 45.00 EUR 6 abc 01/02/2008 68.33 EUR
cbind(xz[xz$V1=="xyz",],xz[xz$V1=="abc",])
V1 V2 V3 V4 V1 V2 V3 V4 1 xyz 01/03/2007 15.25 USD abc 01/03/2007 45.20 EUR 2 xyz 01/04/2007 15.32 USD abc 01/04/2007 45.00 EUR 3 xyz 01/02/2008 23.22 USD abc 01/02/2008 68.33 EUR If it was instead a request for USD next to EUR, then the needed modifications should be obvious.
David Winsemius