[R] how to generate a column based on other columns in a data frame
Peter Dalgaard
P.Dalgaard at biostat.ku.dk
Mon Feb 11 17:56:28 CET 2008
Henrique Dallazuanna wrote:
> Try this:
>
> x2 <- merge(x, cbind(unique(x), Site=sprintf("S%d",
> seq_len(nrow(unique(x))))), by=c("X", "Y"))
> x2[order(x2$site)]
>
That was (close to) my first thought as well. But what about
site <- with(x, interaction(X,Y, drop=TRUE))
levels(site) <- paste("S", seq_len(length(levels(site))), sep="")
-p
> On 11/02/2008, Weidong Gu <wgu at uab.edu> wrote:
>
>> HI,
>>
>>
>>
>> I am working on a data set with multiple collections of mosquitoes at
>> sampling sites. Each row represents a collection of individual samples
>> with coordinates for each collection.
>>
>> ... X, Y,...
>>
>> 1 36.435 30.118
>>
>> 2 36.435 30.118
>>
>> 3 36.435 30.118
>>
>> 4 35.329 29.657
>>
>> 5 35.329 29.657
>>
>> 6 36.431 30.111
>>
>> 7 36.431 30.111
>>
>> 8 35.421 29.797
>>
>> 9 35.421 29.797
>>
>> 10 35.421 29.797
>>
>>
>>
>> Unfortunately, there is no 'site' entry. I would like to add a column of
>> 'site' based on the coordinates of samples so that samples from the same
>> sites have the same site ID like S1, S2,....
>>
>>
>>
>> How to do this in R way? Thanks.
>>
>>
>>
>>
>>
>> Weidong Gu,
>>
>> Department of Medicine
>> University of Alabama, Birmingham
>> 1900 University Blvd., Birmingham, Alabama 35294
>> Email: wgu at uab.edu
>> PH: (205)-975-9053
>>
>>
>>
>>
>> [[alternative HTML version deleted]]
>>
>> ______________________________________________
>> 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.
>>
>>
>
>
>
--
O__ ---- Peter Dalgaard Øster Farimagsgade 5, Entr.B
c/ /'_ --- Dept. of Biostatistics PO Box 2099, 1014 Cph. K
(*) \(*) -- University of Copenhagen Denmark Ph: (+45) 35327918
~~~~~~~~~~ - (p.dalgaard at biostat.ku.dk) FAX: (+45) 35327907
More information about the R-help
mailing list