How to inverse matrix 128*6 in matlab?

5 vues (au cours des 30 derniers jours)
Nandita  Sarkar
Nandita Sarkar le 9 Fév 2022
Modifié(e) : DGM le 9 Fév 2022
I want to inverse my matrices 128*6 into 6*128.

Réponse acceptée

Highphi
Highphi le 9 Fév 2022
u = [1, 1; ...
2, 2; ...
3, 3];
uInverse = flip(u)
uInverse = 3×2
3 3 2 2 1 1
u = [1, 1; ...
2, 2; ...
3, 3];
u90 = rot90(u)
u90 = 2×3
1 2 3 1 2 3
u_neg90 = rot90(u, 3)
u_neg90 = 2×3
3 2 1 3 2 1
  1 commentaire
DGM
DGM le 9 Fév 2022
Modifié(e) : DGM le 9 Fév 2022
Using an asymmetric input allows some distinctions to be made. If the OP is trying to do linear algebra, transposition is probably what's intended.
u = [1, 4; ...
2, 5; ...
3, 6];
u_90 = rot90(u) % rotate 90
u_90 = 2×3
4 5 6 1 2 3
u_neg90 = rot90(u, 3) % rotate -90 (or 270)
u_neg90 = 2×3
3 2 1 6 5 4
u_tpose = u.' % transpose
u_tpose = 2×3
1 2 3 4 5 6
Note that transposition is a special case of permutation that only applies to 2D arrays. More generally, you can do:
u_tpose = permute(u,[2 1])
u_tpose = 2×3
1 2 3 4 5 6

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Operators and Elementary Operations 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