我有一个大矩阵,我想找出,每行最大长度为零之间。 小例子
lapply/sapply
我只想在新矩阵中使用这些最大长度数 我希望它清楚地理解
答案 0 :(得分:3)
使用apply
和rle
的基本R基础方法,其中我们返回两个零之间的最大非零值。
apply(mat == 0, 1, function(x) {
ind = rle(x)
max(ind$lengths[!ind$values])
})
#[1] 3 3 2
使用table
和cumsum
apply(mat == 0, 1, function(x) max(table(cumsum(x))) - 1)
#[1] 3 3 2