I want to compare two data sets at slightly offset times.

조회 수: 1 (최근 30일)
Kyle Reagan
Kyle Reagan 2017년 6월 21일
편집: alice 2017년 6월 22일
I have two sets of data, one called "MCA" and one called "Tank". I want to find the datetime where MCA = 10 as long as Tank has been equal to 0 for at least 10 minutes before and after the time MCA = 10. In datenum format, this corresponds to a time difference of +- 0.01. Is there a simple way to do this?
  댓글 수: 9
Kyle Reagan
Kyle Reagan 2017년 6월 21일
Here is the an example of the issue. I get a vector of dates (in datenum format) for MCA that looks as follows.
datesMCA =
1.0e+05 *
7.3685
7.3686
7.3686
7.3686
7.3686
7.3686
7.3686
7.3686
7.3687
This array consists of all the dates when MCA = 10. There are 3 separate events here (First one is at 7.3685 and lasts very briefly, next is at 7.3686 and lasts a few mins, and last one is at 7.3687 and lasts briefly). Now, over the same time period (the month of June), I get an array of dates when Tank = 1. This is seen below. What I want to do is see for each value in datesMCA whether there is a value in datesTank close to it or not (within a few minutes).
datesTank =
7.3685e+05
dpb
dpb 2017년 6월 21일
편집: dpb 2017년 6월 21일
Not enough precision there to tell the difference but I think I now grok the issue. I'd first suggest switching to the new datenum class instead of datenum.
The list above is only three different values at that resolution; using datestr instead would show the underlying times...
Based on the description albeit not sufficient data to try it, if you have R2015a or later, see
doc uniqeutol
which might just solve your problem in a one-liner. What the doc doesn't say (and I can't test as don't have that recent a release) is whether it will work on datetime inputs or not. Since datenum is just a double, however, it will work on it which is what you've got at the moment anyway. Set the tolerance at 10/(24*60) and 'DataScale',1 to make absolute comparison. The key question is how do we "know" there are three separate events in the data? That's where we need to have the whole set of information available to use in the solution, not just this list of times...

댓글을 달려면 로그인하십시오.

답변 (0개)

카테고리

Help CenterFile Exchange에서 Time Series Objects에 대해 자세히 알아보기

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by