Определить каждую подматрицу, удовлетворяющую условию

В следующей матрице я пытаюсь идентифицировать все самые большие прямоугольники, образованные 1, как показано на рисунке. Прямоугольники могут иметь только одну строку, только если они имеют более 3 столбцов. Прямоугольники могут иметь только один столбец, только если они имеют более 3 строк. Прямоугольники должны иметь меньше столбцов maxcol и строк maxrow и больше mincol и minrow. На картинке mincol=minrow=2. MAXROW =maxcolumn=6

Попытка использовать функцию подмножества, но она предоставляет подматрицы 1 не все наложенные прямоугольники.

mdat <- matrix(c(0,1,1,1,0,0,0,1,0,1,1,1,1,1,1,1,1,1,0,1,0,1,1,0), nrow = 4, ncol = 6, byrow = TRUE) 

dimnames(mdat) <- list(  c("row1", "row2", "row3","row4"), c("col1", "col2", "col3", "col4","col5","col6")) 

Выявленные прямоугольники

0 ответов

Другие вопросы по тегам