i have a function that should work but doesn't

i'm comparing two arrays and choosing the repeated numbers
and then rearranging the new output in descending order
Y1 = [0.0581 0.0424 0.0315 0.0239 0.0184 0.0143 0.0113 0.0090 0.0073 0.0059]
Z1 = [0.0090 0.0073 0.0059]
X = intersect(Z1, Y1)
Ratio = reshape(sort(X(:), 'descend'), [columns, rows])';
this is the result i get, i don't understand why
Undefined function or variable 'columns'.
Ratio = reshape(sort(X(:), 'descend'), [columns, rows])';

 採用された回答

Adam Danz
Adam Danz 2019 年 6 月 13 日
編集済み: Adam Danz 2019 年 6 月 13 日

1 投票

Matlab doesn't know what "columns" means (nor "rows"). My guess is that 'columns' and 'rows' are the number of columns and rows of your reshaped data. Do you know what those values are supposed to be?
In your example data, X is a [1x3] vector. One example would be the following
Ratio = reshape(sort(X(:), 'descend'), [3, 1])';
which is the same as
Ratio = fliplr(sort(X));

2 件のコメント

Omar Almahallawy
Omar Almahallawy 2019 年 6 月 13 日
thnak you it works
Adam Danz
Adam Danz 2019 年 6 月 13 日
Yes, my example using your inputs does not produce an error but make sure this is what your code is supposed to be doing. Just because there isn't an error doesn't mean the code is correct. Many people have learned that the hard way.

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

その他の回答 (0 件)

カテゴリ

ヘルプ センター および File ExchangeGet Started with MATLAB についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by