У меня есть две матрицы (mat1 и mat2) с одинаковым количеством столбцов (по четыре в каждой) и разным количеством строк (одна матрица имеет три, а другая пять). Я хотел бы сравнить каждую строку в одной матрице с каждой строкой в другой матрице. Значения и позиция в строке должны быть одинаковыми в обеих матрицах. Я пробовал функцию «применить», но у меня возникли проблемы при определении функции: apply(mat2,1,function(x){mat1[x,]==mat2 [x,]}
и другие подобные комбинации приводят к сообщению «индекс за пределами». Я очень новичок в этом мире (программирование и программирование), у меня есть информация для поиска в Интернете, но я ничего не нашел. Я действительно застрял. Я был бы очень признателен за вашу помощь. Заранее спасибо. Карпа
> mat1
[,1] [,2] [,3] [,4]
[1,] 2 44 3 9
[2,] 13 56 13 13
[3,] 4 9 14 33
> mat2
[,1] [,2] [,3] [,4]
[1,] 1 6 11 16
[2,] 2 7 12 17
[3,] 3 8 13 18
[4,] 4 9 14 19
[5,] 5 10 15 20
>
The output that I am looking for is:
> [1,]
[,1] [,2] [,3] [,4]
[1,] FALSE FALSE FALSE FALSE
[2,] TRUE FALSE FALSE FALSE
[3,] FALSE FALSE FALSE FALSE
[4,] FALSE FALSE FALSE FALSE
[5,] FALSE FALSE FALSE FALSE
> [2,]
[,1] [,2] [,3] [,4]
[1,] FALSE FALSE FALSE FALSE
[2,] FALSE FALSE FALSE FALSE
[3,] FALSE FALSE TRUE FALSE
[4,] FALSE FALSE FALSE FALSE
[5,] FALSE FALSE FALSE FALSE
> [3,]
[,1] [,2] [,3] [,4]
[1,] FALSE FALSE FALSE FALSE
[2,] FALSE FALSE FALSE FALSE
[3,] FALSE FALSE FALSE FALSE
[4,] TRUE TRUE TRUE FALSE
[5,] FALSE FALSE FALSE FALSE