Subtracting within only 1 dimension of a multidimensional array

5 visualizzazioni (ultimi 30 giorni)
Question: I have a gridded array. Example:
airMetGrid <90x180x40542> single
but my air temp is in kelvin, so I need to subtract 273.15 from ONLY the 3rd dimension (and not mess up my grid). How do I do this? It seems simple but I can't wrap my brain around it today.
Thanks

Risposta accettata

Matt J
Matt J il 8 Lug 2013
Modificato: Matt J il 8 Lug 2013
Since 273.15 is a scalar, there is no apparent difference between subtracting it from the 3rd dimension and subtracting it from the entire array.
inCelsius = airMetGrid-273.15;
  2 Commenti
Matt J
Matt J il 8 Lug 2013
Modificato: Matt J il 8 Lug 2013
Conversely, if you have a length-40542 vector, v, and want to subtract it from every airMetGrid(i,j,:), you could do
newdata=bsxfun(@minus, airMetGrid, reshape(v,1,1,[]) );

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Matrices and Arrays in Help Center e File Exchange

Prodotti

Community Treasure Hunt

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

Start Hunting!

Translated by