How to find the time of event?
3 次查看(过去 30 天)
显示 更早的评论
Hi! I have a matrix with two columns. The first column is time and the second one is events consisted of 0 and 1 only. I would like to know the time when the event (1) happend. How can I do this?
As an example, the matrix is:
0 0
2.53164556962025 0
5.06329113924051 0
7.59493670886076 0
10.1265822784810 0
12.6582278481013 0
15.1898734177215 0
17.7215189873418 0
20.2531645569620 0
22.7848101265823 1
25.3164556962025 1
27.8481012658228 1
30.3797468354430 1
32.9113924050633 1
35.4430379746836 0
In the end I want to get an answer about what time the first 1 appeared. So for this example it should be:
ans = 22.7848101265823
Thanks for any help!
0 个评论
采纳的回答
Tommy
2020-5-26
For this sample matrix:
>> matrix = [cumsum(10*rand(25,1)), rand(25,1) < 0.1]
matrix =
2.6774 0
3.9889 0
10.7113 0
13.0342 0
13.4335 0
13.8455 0
23.4376 0
27.3937 0
33.0231 0
33.0414 0
33.1545 0
35.4013 0
45.2526 0
48.8322 0
49.7725 0
56.3409 1.0000
64.5214 0
66.0233 0
74.9418 0
80.0405 0
87.4213 0
92.1971 0
96.8440 1.0000
106.2857 0
107.8732 0
The following works:
>> t0 = matrix(find(matrix(:,2),1),1)
t0 =
56.3409
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Logical 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!