[R] almost lower triangular matrices
Rolf Turner
rolf at math.unb.ca
Tue Mar 1 21:24:50 CET 2005
> x <- 1:6 # In real life x <- scan(<filename>).
> m <- matrix(0,4,4)
> m[row(m)<col(m)] <- x
> m <- t(m)
> m
[,1] [,2] [,3] [,4]
[1,] 0 0 0 0
[2,] 1 0 0 0
[3,] 2 3 0 0
[4,] 4 5 6 0
The fiddle with the transposing is needed because R puts
data into matrices column-by-column, not row-by-row.
cheers,
Rolf Turner
rolf at math.unb.ca
Michael Anyadike-Danes wrote:
> I have output from a program which produces a distance matrix I want
> to read into a clustering program in R.
>
> The output is a .txt file and is 'almost' lower triangular in the
> sense that it is just the triangle below the diagonal.
>
> So for example a 4-by-4 distance matrix appears as,
>
> 1
>
> 2 3
>
> 4 5 6
>
> i.e. it looks like a lower triangular of a 3-by3.
>
> I thought I might be able to use "diag" to add zeros but apparently not.
>
> It's a problem because my matrix is actually 1989-by-1989 not 4-by-4
>
> I would not be at all surprised if the solution is obvious but I cannot
> quite see how to read this into R.
More information about the R-help
mailing list