[R] Odp: Data frame with 3 columns to matrix
Petr PIKAL
petr.pikal at precheza.cz
Tue Apr 19 12:57:59 CEST 2011
Hi
r-help-bounces at r-project.org napsal dne 19.04.2011 09:46:47:
> Dear R Users,
>
> Lets assume I have this data frame:
>
> x y z
> 1 1.00 5 0.5
> 2 1.02 5 0.7
> 3 1.04 7 0.1
> 4 1.06 9 0.4
>
> x and y columns are sorted and the values not necessarily integers. z
> values are not sorted. Now I would like to create a matrix out of this
> with x as first column values and y as first row values. Matrix element
> a_11 shall be left NA. The a_ij should have the z value for the
> corresponding x and y pair. The result shall be some sort of a grid and
> then e.g. look like:
>
> [,1] [,2] [,3] [,4] [,5]
> [1,] NA 5 6 7 9 (y)
> [2,] 1.00 0.5 NA NA NA
> [3,] 1.02 0.7 NA NA NA
> [4,] 1.04 NA NA 0.1 NA
> [5,] 1.06 NA NA NA 0.4
> (x)
>
> This example is just for illustration. The resulting matrix should have
> more numeric values than NA's.
I am not sure if this is the solution you want
tab<-xtabs(z~x+y, data=df)
tab[tab==0]<-NA
Regards
Petr
>
> I hope I made myself clear. Any hints on how to achieve this? Is there
> already a function that does it? All searches I did pointed me to data
> type frame to matrix conversion...
>
> Kind Regards,
> Michael Bach
>
> ______________________________________________
> 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.
More information about the R-help
mailing list