[R] How to delete the replicate rows by summing up the numeric columns
dwinsemius at comcast.net
Tue Jun 29 23:58:48 CEST 2010
On Jun 29, 2010, at 3:05 PM, Yi wrote:
> Hi, folks,
> I am sorry that I did not state the problem correctly yesterday.
> Please let me address the problem by the following codes:
> ## 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.
> sum=cast(mm,first~variable,sum) ### This does not work.
> ###I tried another way to do this
> mm= melt(data, id='first',measure='third')
> ## But then the problem is how to 'merge' the result with the second
> in the dataset.
> data$summed <- ave(data$third, data$first, FUN=sum)
#computed sums within groups defined by "first"
> data[!duplicated(data$first), c("first", "second", "summed")]
#remove duplicates and leave out "third"
first second summed
1 u usa 8
2 b Brazil 2
3 e England 13
4 k Korea 4
5 j Japan 5
6 c China 15
8 f France 8
> The expected dataframe is like this:
> (I showed a wrong expected dataframe yesterday.)
> first second third
> 1 u usa 8
> 2 b Brazil 2
> 3 e England 13
> 4 k Korea 4
> 5 j Japan 5
> 6 c China 15
> 8 f France 8
> Thanks in advance.
> [[alternative HTML version deleted]]
> R-help at r-project.org mailing list
> 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
More information about the R-help