给出以下向量:
signal <- c(0011100110)
我想找到一种计算平均信号长度的方法。这里第一个信号的长度为3(111),第二个信号的长度为2.然而,我无法找出将原始矢量子集化为仅包含1的子向量的好方法,这样我就可以计算它们的平均值。长度。
答案 0 :(得分:3)
您可以使用此方法查找平均信号长度:
signal <- 0011100110
mean(nchar(strsplit(as.character(signal), "0+")[[1]]))
# [1] 2.5
答案 1 :(得分:1)
另一种方法是使用match.length
的{{1}}属性:
gregexpr