我有一个包含 4 位和 6 位数字的矩阵,它们基本上包括 2 或 3 对数字,描述重叠的形状。所以,例如,
data1<-cbind(474440,470000,440000,40000,404400,474000).
矩阵的每个单元格都具有 a 47、 a 44、 a40或以上的某种组合,其余数字为零。我有另一个类似的数据集,但只有两对数字,而不是三对。所以,例如,
data2<-cbind(5253,5200,5300,50000,5053).
同样,该组合包含52、53、50或它们的某种组合。我希望能够为两位数中的每一个选择一个逻辑矩阵,因此选择40indata1将 yield (TRUE,FALSE,FALSE,TRUE,TRUE,TRUE),并选择50indata2将 yield (FALSE, FALSE, FALSE, TRUE, TRUE)。我已经尝试创建一个我正在寻找的唯一两位数字的列表,并使用 grepl 来选择那些与模式匹配的数字,但是由于矩阵中的零代表空值,grepl 选择了太多的细胞; 例如,寻找40indata1会产生(TRUE, FALSE, TRUE,TRUE, TRUE, TRUE)。