On Jun 28, 2010, at 9:30 PM, Yi wrote:
Hi, folks,
Please let me address the problem by the following codes:
first=c('u','b','e','k','j','c','u','f','c','e')
second
=
c
('usa
','Brazil
','England','Korea','Japan','China','usa','France','China','England')
third=1:10
data=data.frame(first,second,third)
## You may understand values in the first column are the unique
codes for
those in the second column.
####So 'u' is only for usa. Replicate values appear the same rows
for the
first and second columns.
### Now I want to delete replicate rows with the same values in first
(sceond) rows
####and sum up values in the third column for the same values.
> with( data[!duplicated(data$first), ], tapply(third, first, sum) )
b c e f j k u
2 6 3 8 5 4 1
Cannot quite figure out how you got you supposed correct result if you
are removing duplicates. So maybe you are incorrectly stating the
problem and want:
> with( data, tapply(third, first, sum) )
b c e f j k u
2 15 13 8 5 4 8
--
David
mm=melt(data,id='first')
sum=cast(mm,first~variable,sum)
### This does not work. ><
But the expected dataframe is like this:
1 u third 8
2 b third 2
3 e third 13
4 k third 4
5 j third 5
6 c third 15
8 f third 8
Thanks in advance.
Yi
[[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.
David Winsemius, MD
West Hartford, CT
______________________________________________
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.