Help with adding a column with numbers that are repeated to a matrix

2 vues (au cours des 30 derniers jours)
Hi,
I have a 2170x1 matrix I need to create a new 2170x2 matric where I add numbers going from 1 to 12 in the second column all the way to row 2170. The thing is that when 12 is reached I need it to start at 1 again and so on until the end of my matrix is reached but I can't figure out how to do that.

Réponse acceptée

Adam Danz
Adam Danz le 29 Nov 2018
If 'm' is your 2170x1 matrix,
pattern = [1:12]';
patternRep = repmat(pattern, ceil(size(m,1) / length(pattern)), 1);
m(:,2) = patternRep(1:size(m,1));

Plus de réponses (1)

Matt J
Matt J le 29 Nov 2018
Modifié(e) : Matt J le 29 Nov 2018
Let's say your matrix is A,
A(:,2)=mod(0:2169,12)+1;

Catégories

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

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by