[R] How to duplicate rows in dataframe?
cstrato
cstrato at aon.at
Mon Dec 13 22:31:43 CET 2004
Thank you all (Olaf Mersmann, Berton Gunter, James Holtman,
Peter Aspach) for your fast reply.
The solutions:
df[match(x,ix),] and
df[c(1,2,2,3,3),]
are exactly what I was looking for.
Best regards
Christian
Berton Gunter wrote:
> ?match
>
> ix<-df$index ## just for clarity
>
> df[match(x,ix),]
>
> -- Bert Gunter
> Genentech Non-Clinical Statistics
> South San Francisco, CA
>
> "The business of the statistician is to catalyze the scientific learning
> process." - George E. P. Box
>
>
>
>
>>-----Original Message-----
>>From: r-help-bounces at stat.math.ethz.ch
>>[mailto:r-help-bounces at stat.math.ethz.ch] On Behalf Of cstrato
>>Sent: Monday, December 13, 2004 11:03 AM
>>To: r-help at stat.math.ethz.ch
>>Subject: [R] How to duplicate rows in dataframe?
>>
>>Dear all:
>>
>>I have the following (simple?) problem:
>>Consider a dataframe where the first column contains
>>integers used as index, e.g.
>> index
>> 24
>> 13
>> 46
>> 32
>>
>>Now I have the following vector used to sort the dataframe:
>> x <- c(13,24,32,46)
>>Sorting the dataframe can be done by using order.
>>
>>However consider the following vector:
>> x <- c(13,32,13,24,46,24,24)
>>Now I want to get the dataframe in the order of the rows
>>defined in x, i.e. the dataframe contains duplicate rows.
>>One way to achieve this would be to use rbind in a for-loop.
>>
>>My question is:
>>Is there an easier and - more important - faster way to
>>obtain the dataframe as defined in x?
>>
>>Thank you in advance.
>>Best regards
>>Christian
>>_._._._._._._._._._._._._._._._
>>C.h.i.s.t.i.a.n S.t.r.a.t.o.w.a
>>V.i.e.n.n.a A.u.s.t.r.i.a
>>_._._._._._._._._._._._._._._._
>>
>>______________________________________________
>>R-help at stat.math.ethz.ch mailing list
>>https://stat.ethz.ch/mailman/listinfo/r-help
>>PLEASE do read the posting guide!
>>http://www.R-project.org/posting-guide.html
>>
>
>
>
>
>
More information about the R-help
mailing list