Bir vektörü rasgele bir yere matris içine yerleştirmem gerekiyor. Bir vektörü dikey veya yatay olarak nasıl ekleyeceğimi biliyorum ama bunu çapraz olarak yapamam.Bir vektörden çapraz olarak bir matrise matris içine değerler nasıl eklenir?
ben:
A <- matrix(nrow=6,ncol=6)
b <- c(1:4)
istenen sonucu (I konumu A[3,2]
vektörü eklemek istiyorum) olacaktır: Aynı zamanda
[,1] [,2] [,3] [,4] [,5] [,6]
[1,] NA NA NA NA NA NA
[2,] NA NA NA NA NA NA
[3,] NA 1 NA NA NA NA
[4,] NA NA 2 NA NA NA
[5,] NA NA NA 3 NA NA
[6,] NA NA NA NA 4 NA
ben eklemek mümkün istiyorum
[,1] [,2] [,3] [,4] [,5] [,6]
[1,] NA NA NA 4 NA NA
[2,] NA NA 3 NA NA NA
[3,] NA 2 NA NA NA NA
[4,] 1 NA NA NA NA NA
[5,] NA NA NA NA NA NA
[6,] NA NA NA NA NA NA
Zarif çözüm! İşte işlevi: doldurma <- işlev (A, b, i, j, yukarı = YANLIŞ) { k <- seq_along (b) - 1 # dizin oluştur A [cbind (i + ifelse (yukarı, - 1, 1) * k, burada j + k)] <- dönüş (A) } dolgu (A, B, 3, b2) dolgu (A, B, 4, 1, TRUE) –