0
У меня есть матрица (действительно, трехмерный массив), которую я хотел бы «порог» на основе значений в другой матрице (которая полностью бинаризована). Так, например,Индекс матрицы, основанный на значениях другой матрицы
set.seed(1234)
M <- matrix(1:9, nrow=3, byrow=F)
M
[,1] [,2] [,3]
[1,] 1 4 7
[2,] 2 5 8
[3,] 3 6 9
set.seed(1234)
N <- matrix(sample(c(0, 0, 1), 9, replace=T), nrow=3)
N
[,1] [,2] [,3]
[1,] 0 0 0
[2,] 0 1 0
[3,] 0 0 0
Я хотел бы сохранить только значение в M
, которые находятся в том же месте, где N
равно 1; превратите остальные в 0. Выход должен быть:
M.thresh
[,1] [,2] [,3]
[1,] 0 0 0
[2,] 0 5 0
[3,] 0 0 0
Я добавил 'set.seed' функцию для воспроизводимости. Исправьте желаемый результат для этих новых (и всегда одинаковых) матриц. – SabDeM
'M.thresh <- ifelse (N! = 1,0, M)' – Heroka
@Heroka Я думаю, мне нужна дополнительная доза кофе ... это было болезненно очевидное решение. Благодаря! –