Pairs of elements that meet a condition?
2 ビュー (過去 30 日間)
古いコメントを表示
Suppose all_val is an nx2 matrix of real numbers.
How to get a matrix cond_val with only the rows of all_val for which
fun(j1)*fun(j2) < 0 % for some scalar-input function fun.m
Where j1 is the element from column 1 and j2 is the corrosponding element from column 2 of the rows of all_val.
0 件のコメント
採用された回答
その他の回答 (2 件)
Massimo Zanetti
2016 年 10 月 9 日
編集済み: Massimo Zanetti
2016 年 10 月 9 日
A=rand(15,2);
f=@(x) x.^2; %or another function you define
C=cell2mat( arrayfun( @(k) f(A(k,1))*f(A(k,2))<0 , (1:15)' ) );
0 件のコメント
Star Strider
2016 年 10 月 9 日
I have no idea what ‘fun’ does or what ‘all_vals’ contains, but you can do something like this to create a logical vector output:
all_vals = randi(9, 10, 2); % Create Matrix
fun = @(x) x - 5; % Create Function
Out = (fun(all_vals(:,1)) .* fun(all_vals(:,2))) < 0; % Logical Vector Output
Elements of ‘Out’ equal to 1 are true so the condition was met, 0 are false.
0 件のコメント
参考
製品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!