Hul*_*lkD 7 arrays sorting r matrix
目的是创建一个数组/矩阵,对 3 行数字(向量)进行排序,并将数字计数到数组中。
向量(x、y、z)
x <- 1 4 5 6
y <- 2 3 3 4 4 5 5 6 6 7 7 7 9
z <- 2 2 2 3 3 3 3 4 4 4 4 4 5 5 5 5 5 6 7 8 9 9
Run Code Online (Sandbox Code Playgroud)
矩阵/数组(理想输出)
[,1] [,2] [,3]
[1,] 1 0 0
[2,] 0 1 3
[3,] 0 2 4
[4,] 1 2 5
[5,] 1 2 5
[6,] 1 2 1
[7,] 0 3 1
[8,] 0 0 1
[9,] 0 1 2
Run Code Online (Sandbox Code Playgroud)
我已经尝试过,但只能将向量中的数字直接输入到数组中。
我目前有一个全为“0”的 9x3 矩阵。:(
task_six <- matrix(0, nrow = 9, ncol = 3)
task_six
[,1] [,2] [,3]
[1,] 0 0 0
[2,] 0 0 0
[3,] 0 0 0
[4,] 0 0 0
[5,] 0 0 0
[6,] 0 0 0
[7,] 0 0 0
[8,] 0 0 0
[9,] 0 0 0
Run Code Online (Sandbox Code Playgroud)
jdo*_*res 10
我们可以用来tabulate计算每个向量的总数,并将sapply计算同时应用于所有三个向量。
x <- c(1, 4, 5, 6)
y <- c(2, 3, 3, 4, 4, 5, 5, 6, 6, 7, 7, 7, 9)
z <- c(2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 6, 7, 8, 9, 9)
max_value <- max(x, y, z)
result <- sapply(list(x, y, z), function(i) tabulate(i, max_value))
[,1] [,2] [,3]
[1,] 1 0 0
[2,] 0 1 3
[3,] 0 2 4
[4,] 1 2 5
[5,] 1 2 5
[6,] 1 2 1
[7,] 0 3 1
[8,] 0 0 1
[9,] 0 1 2
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
207 次 |
| 最近记录: |