Thank you Rui,
Actually, I am making some matrix as follows:
0 1 1
1 0 1
1 1 0
matrix(rep(c(0,1,1,1),3),nrow=3,ncol=3)
and
1? 3 ? 5? 7? 9? 11
13? 15? 17? 19
21 ? 23? 25? 27
29 31 33 35
i<-0:17 matrix(2*i+1,nrow=3,byrow=TRUE)
and
1????? 0.5?? 0.5
0.5?? ? 1???? 0.5
0.5?? 0.5??? 1
matrix(rep(c(1,0.5,0.5,0.5),3),nrow=3,ncol=3)
For all the above matrixes I have written a code (as you see below each
matrix) . If you want to make the above matrixes, will you use my codes
or will you have other simpler ways for making the above matrixes?
On Sat, May 23, 2020 at 2:39 PM Rui Barradas <ruipbarradas at sapo.pt
<mailto:ruipbarradas at sapo.pt>> wrote:
Hello,
Use diag() and cbind().
special_mat <- function(n){
? ?if(n %% 2 != 0) {
? ? ?msg <- paste(sQuote(n), 'is not a multiple of 2, will use')
? ? ?n <- 2*(n%/% 2)
? ? ?msg <- paste(msg, sQuote(n))
? ? ?warning(msg)
? ?}
? ?x <- diag(n/2)
? ?diag(x) <- seq.int <http://seq.int>(n/2)
? ?cbind(x, (n/2 + 1):n)
}
special_mat(6)
special_mat(8)
special_mat(7)
Hope this helps,
Rui Barradas
?s 10:45 de 23/05/20, Vahid Borji escreveu:
> Hi my friends,
>
> I want to make the below matrix in r:
>
> 1 0 0 4
>
> 0 2 0 5
>
> 0 0 3 6
>
> I used the below code:
>
> matrix(c(1,0,0,0,2,0,0,0,3,4,5,6),nrow=3)
>
> My code works. But I do not like my solution way. I am thinking
> simplest way for making this matrix. Do you think my code is the
> code for making this matrix? If not, could anyone writes a
> than my one?
>
>? ? ? ?[[alternative HTML version deleted]]
>
> ______________________________________________
> R-help at r-project.org <mailto:R-help at r-project.org> mailing list
-- To UNSUBSCRIBE and more, see