我正在试验R中的cpt和bcp包。我从CSV文件中导入以下数据:
以下是CSV文件链接:http://www.filedropper.com/cpttest
运行bcp:
p.bcp=bcp(p$Rate);
plot(p.bcp)
第28点是根据bcp的变化点。
运行cpt时,我没有指示存在更改点:
p.cpt=cpt.mean(p$Rate,method="AMOC")
p.cpt
想知道是否有人可以建议为什么 cpt 没有检测到更改点?
答案 0 :(得分:1)
R
中有很多变更点软件包,您可以尝试其他软件包。我有compiled a list here。免责声明:我是mcp
软件包的开发人员。
要使用mcp
解决问题,请执行以下操作:
model = list(
Rate ~ 1, # Intercept
~ 1 # Another intercept
)
library(mcp)
fit = mcp(model, p)
plot(fit)
查看变化点(cp_1
)的估计值以及模型的其他参数。您还可以在上面的图中将其视为狭窄的蓝色分布。
summary(fit)
Family: gaussian(link = 'identity')
Iterations: 9000 from 3 chains.
Segments:
1: Rate ~ 1
2: Rate ~ 1 ~ 1
Population-level parameters:
name mean lower upper Rhat n.eff
cp_1 30.5009 3.0e+01 3.1e+01 1 6250
int_1 0.0132 1.3e-02 1.3e-02 1 5501
int_2 0.0071 6.8e-03 7.3e-03 1 5514
sigma_1 0.0008 6.8e-04 9.4e-04 1 5056
答案 1 :(得分:0)
查看changepoint
package是否满足您的目的。
将单词var gif;
function setup() {
createCanvas(700, 300);
gif = loadGif('ppp.gif');
}
function draw() {
background(0);
image(gif, 0, 0);
}
替换为<script src="libraries/p5.gif.js"></script>
<script src="libraries/p5.gif.min.js"></script>
,method
或PELT
。
BinSeg