[R] Create Matrix of 2 Dim from two vectors

Ivan Calandra ivan.calandra at uni-hamburg.de
Mon Nov 8 11:40:30 CET 2010


Hi,

First, create a MATRIX of the correct size:
xy <- matrix(nrow=3, ncol=3)

Then, in your for loop, you need to index each cell correctly, like this:
xy[i,j]

Finally, if you want to assign "1,4" to each cell, you need to paste 
x[i] and y[j] together, like this:
xy[i,j]<-paste(x[i],y[j], sep=",")

With the brackets if you want:
xy[i,j]<-paste("(", x[i], ",", y[j], ")", sep="")

Or easier like this:
xy <- matrix(rep(x,3),nrow=3, ncol=3)
apply(xy, 1, FUN=paste, y, sep=",")

HTH,
Ivan

Le 11/8/2010 11:15, abotaha a écrit :
> Hello,
>
> I have two data.
>
> x<-c(1, 2, 3)
> y<-c(4,5,6)
>
> How do i create matrix of 3 by 3 from this two, such that
>
>   (1,4)  (1,5)  (1,6)
>   (2,4)  (2,5)  (2,6)
>   (3,4)  (3,5)  (3,6)
>
> I tried some thing like this:
>
> xy<- as.data.frame(c(0,0,0), dim=c(3,3))
> for(i in 1:3)
> for(j in 1:3)
> xy[i][j]<-c(x[i],y[j])
>
> but i got errors..!!!!
> any help would appreciate
>
>
>
>

-- 
Ivan CALANDRA
PhD Student
University of Hamburg
Biozentrum Grindel und Zoologisches Museum
Abt. Säugetiere
Martin-Luther-King-Platz 3
D-20146 Hamburg, GERMANY
+49(0)40 42838 6231
ivan.calandra at uni-hamburg.de

**********
http://www.for771.uni-bonn.de
http://webapp5.rrz.uni-hamburg.de/mammals/eng/mitarbeiter.php



More information about the R-help mailing list