Matrix Simple Index Question

Hello Experts,
1) Given matrix A with m rows and n columns, I want to check if there is an entry A(i,j)>alpha and if yes to make it A(i,j) = beta. How to make it without for and if? 2) How to make it in a vector of size (1,m) or (1,n)?
Thanks a lot in advance!

 Réponse acceptée

Oleg Komarov
Oleg Komarov le 1 Juin 2012

3 votes

Sample inputs:
m = 10;
n = 13;
A = rand(m,n);
alpha = .38;
Use logical indexing
idx = A > alpha;
A(idx) = 10;
Same applies to a vector (just play around with m and n to see that).

4 commentaires

Steve
Steve le 1 Juin 2012
Dear Oleg,
Thank you very much for your quick response and smart solution!
Please provide me a link or a book name where can I find all those shortcuts and tricks.
Thanks a lot in advance.
Oleg Komarov
Oleg Komarov le 1 Juin 2012
Check out the getting started guide and especially this section: http://www.mathworks.co.uk/help/techdoc/learn_matlab/f2-8955.html
Oleg Komarov
Oleg Komarov le 1 Juin 2012
Demos are also useful: http://www.mathworks.co.uk/products/matlab/demos.html
Steve
Steve le 2 Juin 2012
Dear Oleg, again thank you very very much!!!
It was my great pleasure to get your answer and experts guide!
Steve

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

Produits

Community Treasure Hunt

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

Start Hunting!

Translated by