Borrar filtros
Borrar filtros

How do I add a column to an existing matrix?

60 visualizaciones (últimos 30 días)
lil brain
lil brain el 19 de En. de 2022
Comentada: Cris LaPierre el 19 de En. de 2022
Hi I have this code here:
[m,n] = size(windows);
H = zeros(n,1);
for i = 1:n
r = windows(:,i);
H(i) = dfaedit(r,1,1,1);
end
Richt now it creates a new variable H. However, every time I run this code, I would like it to add the resulting column to an existing variable H_all so that it results in a matrix of columns.
Does that make sense? Help is much appreciated!

Respuesta aceptada

Cris LaPierre
Cris LaPierre el 19 de En. de 2022
Use [] to concatenate your result to your existing variable. You'll need to force your for loop to create a column vector instead of a row vector (change shown below).
Note that this assumes that H_all will always have the same number of rows as H.
[m,n] = size(windows);
H = zeros(n,1);
for i = 1:n
r = windows(:,i);
H(i,1) = dfaedit(r,1,1,1);
end
H_all = [H_all,H]
  2 comentarios
lil brain
lil brain el 19 de En. de 2022
Perfect! One last question. How would I need to write this if I dont want a new variable created every time? Thanks!
Cris LaPierre
Cris LaPierre el 19 de En. de 2022
Meaning you just want to add to H_all directly? Specify the column of H_all to add the new data to.
[m,n] = size(windows);
c = size(H_all,2)+1;
for i = 1:n
r = windows(:,i);
H_all(i,c) = dfaedit(r,1,1,1);
end

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Creating and Concatenating Matrices en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by