我正在尝试使用“中位数绝对偏差值排序列表的拐点”进行“方差过滤”来重现论文。
到目前为止,我获得了mad
的中位数绝对值(MAD :):
mad.v <- apply(x, 2, mad, na.rm = T)
mad.v <- mad[!is.na(mad.v)]
然后我创建一个函数来计算这些值的百分比
count.p <- function(data, per){
# Calculates the percentatge above some data
sum(data >= per)/length(data)
}
perc <- unlist(lapply(mad.v, count.p, data = mad.v))
当我绘制它时,我获得了类似的东西:
垂直蓝线是蓝色趋势的拐点,红色是另一个的拐点。我不太相信,因为在这一点之前,红色趋势已经改变了凹陷。
如何获得拐点?
我已经看过变形包但我不知道如何在上面的图像中正确使用ede
那里应该是拐点。我也找到了RootsExtremaInflections包,但我不知道如何正确使用它(我做了:inflexi(mad.v, perc, 3000, 13000, 2, 5, "x", "y", 3,3)
)
我尝试过的其他事情是另一个question并且自己做secant method函数的衍生物(我不确定如何计算它们)
sampledata <- matrix(rnbinom(5000, 2, 0.5), 10, 500)