[R] Summing identical IDs
PDXRugger
J_R_36 at hotmail.com
Fri Oct 30 20:29:59 CET 2009
David,
You are correct. I think the frist two assumptions can be thrown out and
only the latter two (c,d) can be considered. So how would i combine Acres
for matching Bldgids based on assumptions c,d?
David Winsemius wrote:
>
>
> On Oct 29, 2009, at 5:23 PM, PDXRugger wrote:
>
>>
>> Terrific help thank you.
>> dupbuild<-aggregate(DF$Acres, list(Bldgid), sum)
>> This line worked best.
>>
>> Now im going to challenge everyone (i think?)
>>
>> Consider the following:
>>
>>
>> Acres<-c(100,101,100,130,156,.5,293,300,.09,100,12.5)
>> Bldgid<-c(1,2,3,4,5,5,6,7,7,8,8)
>> Year<-c(1946,1952,1922,1910,1955,1955,1999,1990,1991,2000,2000)
>> ImpValue<-c(1000,1400,1300,900,5000,1200,500,1000,300,1000,1000)
>> DF=cbind(Acres,Bldgid,Year,ImpValue)
>> DF<-as.data.frame(DF)
>>
>> I would like to do the same, except there are some rules i want to
>> follow.
>> I only want to aggregate the Acres if :
>> a) The Years are not identical
>> b) The ImpValues are not identical
>> c) The Years are identical and the ImpValue are not
>> d)The ImpValues are identical and the Years are not
>
> As I review your Boolean logic, I run into serious problems.
>
> c) and d) cannot be true if a and b) are true.
>
> So no cases satisfy all 4 specs. In particular both of the pairs you
> say you want aggregated (5+6) and 10+11) violate rule a) and the
> second pair also violates b).
>
> --
> David
>>
>> but if the Acres and ImpValues are identical i would still like to
>> add the
>> Acres together and form one case.
>> If the cases are put together i would also like to add the ImpValues
>> together. So the below
>>
>> Acres Bldgid Year ImpValue
>> 1 100.00 1 1946 1000
>> 2 101.00 2 1952 1400
>> 3 100.00 3 1922 1300
>> 4 130.00 4 1910 900
>> 5 156.00 5 1955 5000
>> 6 0.50 5 1955 1200
>> 7 293.00 6 1999 500
>> 8 300.00 7 1990 1000
>> 9 0.09 7 1991 300
>> 10 100.00 8 2000 1000
>> 11 12.50 8 2000 1000
>>
>> would become
>>
>> Acres Bldgid Year ImpValue
>> 1 100.00 1 1946 1000
>> 2 101.00 2 1952 1400
>> 3 100.00 3 1922 1300
>> 4 130.00 4 1910 900
>> 5 156.50 5 1955 6200
>> 7 293.00 6 1999 500
>> 8 300.09 7 1990 1300
>> 10 112.50 8 2000 1000
>>
>> Thanks, i gave it a bunch of shots but nothing worth posting.
>>
>>
>>
>>
>>
>> PDXRugger wrote:
>>>
>>> Hello All,
>>> I would like to select records with identical IDs then sum an
>>> attribute
>>> then and return them to the data frame as a single record. Please
>>> consider
>>>
>>>
>>> Acres<-c(100,101,100,130,156,.5,293,300,.09)
>>> Bldgid<-c(1,2,3,4,5,5,6,7,7)
>>>
>>> DF=cbind(Acres,Bldgid)
>>> DF<-as.data.frame(DF)
>>>
>>> So that:
>>>
>>> Acres Bldgid
>>> 1 100.00 1
>>> 2 101.00 2
>>> 3 100.00 3
>>> 4 130.00 4
>>> 5 156.00 5
>>> 6 0.50 5
>>> 7 293.00 6
>>> 8 300.00 7
>>> 9 0.09 7
>>>
>>> Becomes
>>>
>>> Acres Bldgid
>>> 1 100.00 1
>>> 2 101.00 2
>>> 3 100.00 3
>>> 4 130.00 4
>>> 5 156.50 5
>>> 7 293.00 6
>>> 8 300.09 7
>>>
>>> dup<-unique(DF$Bldgid[duplicated(Bldgid)])
>>> dupbuild<-DF[DF$Bldgid %in% dup,]
>>> dupbuild..dupareasum<-sum(dupbuild$Acres[duplicated(dupbuild
>>> $Bldgid)])
>>>
>>> This sums the unique Ids of the duplicated records, not whati want.
>>> Thanks ahead of time
>>>
>>> JR
>>>
>>>
>>>
>>
>> --
>> View this message in context:
>> http://www.nabble.com/Summing-identical-IDs-tp26118922p26121056.html
>> Sent from the R help mailing list archive at Nabble.com.
>>
>> ______________________________________________
>> 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.
>
> David Winsemius, MD
> Heritage Laboratories
> West Hartford, CT
>
> ______________________________________________
> 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.
>
>
--
View this message in context: http://old.nabble.com/Summing-identical-IDs-tp26118922p26135732.html
Sent from the R help mailing list archive at Nabble.com.
More information about the R-help
mailing list