找到上升点和下降点
5次浏览(过去30天)
显示旧的注释
接受的答案
凯文·霍利
2022年6月30日
编辑:凯文·霍利
2022年6月30日
你需要知道如何在给定的原始数据中找到这些点吗?如果是,请参见下面的方法。
通过求左边的差值来求斜率,然后求绝对值。找出大于特定阈值的斜率(数据点)。注意,如果你只关心正斜率(在你提供的例子中左边的两个红点),那么不要取绝对值。从右边做同样的事情。找到左方法和右方法之间常见的已识别的数据点。
X = 1:11;
Y = [0 0 0 0.3 0.8 1 1 1 0.5 0 0];
数字
散射(x, y,“填充”)
阈值= 0.1;
X1 = x(2:结束);
Y1 = abs(diff(y));
X_left = x1(y1>阈值)
X2 = flip(x(1:end-1));
Y2 = abs(diff(flip(y)));
X_right = x2(y2>阈值)
Values = intersect(x_left,x_right)
数字
散射(x, y,“填充”)
持有在
散射(值,y(值),“填充”,“r”)
用可视化方法显示:
数字
散射(x, y,“填充”)
从左边靠近
数字
X1 = x(2:结束);
Y1 = abs(diff(y));
X_left = x1(y1>阈值)
散射(x1, y1,“填充”)
从右侧接近
数字
X2 = flip(x(1:end-1));
Y2 = abs(diff(flip(y)));
X_right = x2(y2>阈值)
散射(x2, y2,“填充”)
找出x_left和x_right之间共有的值。
Values = intersect(x_left,x_right)
数字
散射(x, y,“填充”)
持有在
散射(值,y(值),“填充”,“r”)