Vector operations not working correctly

1 回表示 (過去 30 日間)
atan
atan 2019 年 6 月 16 日
コメント済み: Andrei Bobrov 2019 年 6 月 16 日
I have the following code
cvPredictions = (pval < epsilon)== 1; % Anomaly
cvPredictions = (pval > epsilon)== 0; % Not an anomaly
In the above code, pval is a vector, epsilon is a scalar and cvPredictions will be vector and each element of a vector will be 0 or 1
I want the follwoing
a) if any element of pval is less than epsilon, then, I want the corresponding element of cvPredictions to be 1
b) if any element of pval is greater than epsilon, then, I want the corresponding element of cvPredictions to be 0
I do not want to give a for loop. I do not think the above code is correct. Can anyone suggest me how to achieve a and b in simple one or 2 liner vectorized approach?

採用された回答

Andrei Bobrov
Andrei Bobrov 2019 年 6 月 16 日
cvPredictions = pval < epsilon;
  2 件のコメント
atan
atan 2019 年 6 月 16 日
編集済み: atan 2019 年 6 月 16 日
I do not get it. How can this work?
Andrei Bobrov
Andrei Bobrov 2019 年 6 月 16 日
>> pval = randi(100,6,1)
pval =
82
91
13
92
64
10
>> epsilon = 50
epsilon =
50
>> cvPredictions = pval < epsilon
cvPredictions =
6×1 logical array
0
0
1
0
0
1
>>

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeCreating and Concatenating Matrices についてさらに検索

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by