How to take a part of matrix, which is function result?

2 vues (au cours des 30 derniers jours)
Junho Kweon
Junho Kweon le 5 Sep 2018
Commenté : Junho Kweon le 5 Sep 2018
My code is like this.
A = [1 2; 3 4];
B = sum(A) % I want to use fft or other functions rather than 'sum'
x = B(1)
Then, the result is
B = 4 6
x = 4
If I want to take part of the function directly, that is like
x = sum(A)(1)
How can I do it?

Réponse acceptée

Walter Roberson
Walter Roberson le 5 Sep 2018
Nth = @(M, varargin) M(varargin{:});
After which you can
x = Nth(sum(A), 1);
There is no syntax for indexing the result of a function: there is only a way to use an auxillary function to express the indexing in expression form instead of having to always assign to a temporary variable and index that variable.
  1 commentaire
Junho Kweon
Junho Kweon le 5 Sep 2018
OMG, that's such an easy way! Thanks pal :)

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Matrix Indexing dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by