我有一个类似于这样的二进制样本:
Z = c(0,0,0,1,0,1,1,1,0,1,0,0,1,0,1,0,1,1,1,0,1,0,1,0)
我想将数字长度为4的所有序列进行转换,即:
我需要读取原始二进制样本,并将所有可能的长度为4的序列转换为数字。
例如: 序列0000将变成1,序列0001将变成2,序列0010将变成3,...,序列1111将变成16。
期望输出应该是由数字1、2、3、…、16组成的新样本,其长度与原始样本相同:
Z = c(0,0,0,1,0,1,1,1,0,1,0,0,1,0,1,0,1,1,1,0,1,0,1,0)
Z1 = c(2,3,6,12,8,15,14,11,5,10,3,11,6,12,8,15,14,11,6,11)
我该如何在R中实现这个功能?