我有一个矩阵,行数非常多,只有两对成对的列。我想计算第 1 列中每行之间的差异,如果差异小于预定义值(.001),则计算两列中这些行的平均值。例如,我有一个称为权重的矩阵,
A B
185.0765 10
185.3171 20
186.0777 30
186.0780 40
188.0078 50
weights<-as.data.table(weights)
bins<-weights[A %between% c(A[3],(A[3]+.001))]
meanA<-mean(bins$A)
meanB<-mean(bins$B)
结果矩阵将是,
A B
185.0765 10
185.3171 20
186.0779 35
188.0078 50
如果有人能建议我如何为大量行执行此操作,我将不胜感激。我认为使用 for 循环不会很有效。