我想在R中的两个方向上分别对归一化向量求和
例如,对于标准化后的矢量3,4,5,6,10,9,8,7 0.3,0.4,0.5,0.6,1.0,0.9,0.8,07 . 我想在左边的值<1和分开,发现他们的区别 . 在这种情况下,它将是= 0.3 0.4 0.5 0.6 = 1.8,右= 0.9 0.8 0.7 = 2.4 . 差异将是右减去等于0.6 .
以下是我的一些想法:
a <- c(3,4,5,6,10,9,8,7)
norm <- a/max(a) # normalization
left <- sum(a[1:which.max(a)-1]) # left sum
right <- sum(a[which.max(a)+1:length(a)]) # right sum
diff <- right-left
有任何改进建议吗?
1 回答
我们可以使用
rleid
获取分组变量,获取每组'norm'的sum
('ind')并获得差异