我正在尝试使用K-means方法将r中的以下曲线分成两组。当我运行K-means时,我得到了正值聚在一起,负值聚在一起。我试着根据它们的斜率对它们进行聚类,第一组在斜率为正时,第二组在斜率为负时。我很确定答案是将曲线转换为斜率值,但不确定如何获得曲线的移动斜率。我将非常感谢你的帮助。谢谢!

发布于 2020-08-27 04:40:35
这可能就是你想要的。我创建了一些垃圾测试数据。
## Some sample data - not sin, but pretty close.
set.seed(1234)
x = sort(runif(200, -pi, pi))
y = sin(x) * (1 + x/20)
## Get derivative
DERIV = diff(y)/diff(x)
## Set up blank plot
plot(x,y, type='n')
## Add curve
segments(x[-length(x)], y[-length(y)], x[-1], y[-1],
col=as.numeric(DERIV>0)+1)

https://stackoverflow.com/questions/63605077
复制相似问题