How to determine the start time and the end time of the signal
10 次查看(过去 30 天)
显示 更早的评论
Hi, I want to find the start time and the end time of the signal as shown in figure below.
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/1033925/image.png)
I tried using "findchangepts" command to identify the both time but the x-axis is incorrect. Is someone know what is the reason?
In addition, I also not sure how accurate it is by using this method.
findchangepts(signal.CurrentRMS_amp_,'MaxNumChanges',3, 'Statistic','rms')
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/1033930/image.png)
Is there any methods to find the time accurately?
Any advice would be appreciated.
Thank you.
0 个评论
采纳的回答
Sam Chak
2022-6-16
Alternatively, try this. The findchangepts function actually works.
T = readtable('https://www.mathworks.com/matlabcentral/answers/uploaded_files/1033920/signal.csv');
t = T.(1);
y = T.(2);
ipt = findchangepts(y, 'MaxNumChanges', 10);
Tstart = t(ipt(1))
Tfinal = t(ipt(end))
plot(t, y)
hold on
plot(Tstart, y(ipt(1)), 'ro', 'linewidth', 1.5, 'MarkerSize', 14)
plot(Tfinal, y(ipt(end)), 'ro', 'linewidth', 1.5, 'MarkerSize', 14)
xlim([1.05 1.65])
更多回答(1 个)
KSSV
2022-6-16
T = readtable('https://in.mathworks.com/matlabcentral/answers/uploaded_files/1033920/signal.csv') ;
t = T.(1) ;
x = T.(2) ;
idx = x>0.1 ;
plot(t,x,'r',t(idx),x(idx),'b')
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Parametric Spectral Estimation 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!