[R] Create pairwise table from columns?
hadley wickham
h.wickham at gmail.com
Sat May 10 14:53:20 CEST 2008
On Fri, May 9, 2008 at 7:17 PM, knussear <knussear at mac.com> wrote:
>
> Hi Group
>
> I have a large data set of individual pairwise values (250,000 rows) that I
> need to reshape into a pairwise matrix for mantel tests of these values
> versus genetic distances.
>
> the data are currently in columns formatted like so
> AnimalA, AnimalB, Score
> A1, A2, S1
> A1, A3, S2
> A1, A4, S3
> A2, A3, S4
> A2, A4, S5
> A3, A4, S6
> ...,....,....
>
>
> I need the final matrix to be formatted as
> A1 A2 A3 A4
> A1 0 S1 S2 S3
> A2 S1 0 S4 S5
> A3 S2 S4 0 S6
> A4 S3 S4 S6 0
One approach would be to use the reshape package (http://had.co.nz/reshape) -
dfm <- melt(mydf, id = c("AnimalA", "AnimalB"))
cast(dfm, AnimalA ~ AnimalB)
Hadley
--
http://had.co.nz/
More information about the R-help
mailing list