Effacer les filtres
Effacer les filtres

Vector Manipulation - How to achieve this specific form?

2 vues (au cours des 30 derniers jours)
Mathias Dirksmeier
Mathias Dirksmeier le 1 Oct 2018
Commenté : Star Strider le 2 Oct 2018
Hi all,
I want to receive an expression like this: sos = {[1 8761]' [2 8762]' [3 8763]' [4 8764]' ... [8760 17520]'};
Do you have an idea on how to achieve this?

Réponse acceptée

Star Strider
Star Strider le 1 Oct 2018
Try this:
v1 = 1:17520; % Create Vector
v2 = reshape(v1, [], 2)'; % Reshape Vector To 2-Row Matrix
c = mat2cell(v2, 2, ones(1,size(v2,2))); % Create Cell Array
q1 = v2(:,1:5); % View Original Matrix Sample (Delete Later)
q2 = [c{1:5}] % View Cell Array Sample (Delete Later)
q2 =
1 2 3 4 5
8761 8762 8763 8764 8765
I created separate assignments for clarity. Note that ‘c’ is a (1x8760) cell array, the format requested.
  4 commentaires
Mathias Dirksmeier
Mathias Dirksmeier le 2 Oct 2018
Perfect! Thanks a lot!!
Star Strider
Star Strider le 2 Oct 2018
As always, my pleasure!

Connectez-vous pour commenter.

Plus de réponses (1)

Mathias Dirksmeier
Mathias Dirksmeier le 1 Oct 2018
Well, I surely know num2cell...
However, that wasn't the question, was it?
{[1 8761]' [2 8762]' [3 8763]' [4 8764]' ... [8760 17520]'};
How to achieve this specific form?

Catégories

En savoir plus sur Resizing and Reshaping Matrices dans Help Center et File Exchange

Produits


Version

R2018a

Community Treasure Hunt

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

Start Hunting!

Translated by