bsxfun et detrend

Déjà que se passe t’il si on fait A-mean(A)

Error using –
Matrix dimensions must agree.

… normal .

Avec deux for-loops:

A =[1 2 ; 3 4]
meansis =mean(A)
for ii= 1:2
for jj = 1:2
Result(ii,jj) =A(ii,jj)-meanis(jj);
end
end

et sans boucle for , voilà 2 solutions qui claquent!

Avec bsxfun :

Result = bsxfun(@minus,A,mean(A))

plus d’infos sur la doc de bsxfun: ici

ou avec detrend :

Result = detrend(A,’constant’)

Info qu’on trouve dans la doc : y = detrend(x,’constant’) removes the mean value from vector x or, if x is a matrix, from each column of the matrix.

Voilà c’était le tip and trick du jour.

  • A noter dans vos agendas :

Du 21 au 23 août 2012,Yair Altman fait un training à Genève en Suisse. Voici l’agenda :

• Aug 21 – Matlab performance tuning
• Aug 22 – Advanced Matlab GUI
• Aug 23 – Using Java in Matlab (inc. extra advanced GUI)

Vous pouvez vous inscrire en écrivant à altmany(at)gmail.com

Une réflexion au sujet de « bsxfun et detrend »

Laisser un commentaire