【値の判別】データ内​の値が、閾値より変化​した場合の判別方法

조회 수: 12 (최근 30일)
RK
RK 2022년 1월 13일
댓글: RK 2022년 1월 14일
MATLABアプリを作成しています。
下図のようなデータの2列目において、
2行目から3行目にかけて値が変化しているとします。
この2行目という位置を算出することは可能でしょうか。
具体的には、
閾値を2とした場合、2行目から3行目にかけて、2→0へと変化⇒閾値2より変化したため、変化前の行数を記録 のような感じです。
よろしくお願いいたします。

채택된 답변

Atsushi Ueno
Atsushi Ueno 2022년 1월 13일
data = [0 1 2 3 4 5; 2 2 0 0 0 0]'
data = 6×2
0 2 1 2 2 0 3 0 4 0 5 0
find(diff(data(:,2))) % 2列目の変化がある箇所を検索する
ans = 2
  댓글 수: 3
Atsushi Ueno
Atsushi Ueno 2022년 1월 13일
편집: Atsushi Ueno 2022년 1월 13일
変化(diff)の判断に幅を持たせる事も方向付けをする事も出来ます
data = [0 1 2 3 4 5 6 7 8 9; 2 2 0 0 1 0 2 2 0 0]
data = 2×10
0 1 2 3 4 5 6 7 8 9 2 2 0 0 1 0 2 2 0 0
df = diff(data(2,:))
df = 1×9
0 -2 0 1 -1 2 0 -2 0
find(df <= -2) % 幅2以上の立下りのみ抽出(2列目と8列目)
ans = 1×2
2 8
RK
RK 2022년 1월 14일
上記、理解出来ました。
ありがとうございました。

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

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 GUIDE アプリの移行에 대해 자세히 알아보기

제품


릴리스

R2021a

Community Treasure Hunt

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

Start Hunting!