Adding values to cells as the indices increase

4 visualizaciones (últimos 30 días)
Holmbrero
Holmbrero el 22 de Dic. de 2020
Comentada: Holmbrero el 4 de En. de 2021
Hi!
I have a n x m cell array and i want to add a multiple of a constant as n and m increases.
(1,1) (1,2) (1,3)
(2,1) (2,2) (2,3) ---- add constant to row nr 2.
(3,1) (3,2) (3,3) ---- add constant x2 to row nr 3.
I would also like to add a constant to columns as they increase.
Any suggestions?
  3 comentarios
Holmbrero
Holmbrero el 22 de Dic. de 2020
I'll try to elaborate.
(1,1) (1,2) (1,3)
(2,1) (2,2) (2,3)
(3,1) (3,2) (3,3)
I want to add a constant to row nr 2 ((2,1) (2,2) (2,3) ) and a multiple of the same constant to row nr 3 ((3,1) (3,2) (3,3) )
I also want to add another constant to column nr 1 ((1,2) (2,2) (2,3)) and a multiple of the same constant to columnt 3 ((1,3) (2,3) (3,3)).
I could just add them manually but i need the solution to work on a arbitrary nxm cell array.
Did that make my question easier to interpret?
Regards
Aaron Fredrick
Aaron Fredrick el 23 de Dic. de 2020
Yes I understand your question but, just to blear could you tell as the matrix increases each time,
a constant is added to 2nd row and a multiple of that to the 3rd row, and another constant to 1st column and a multiple of that to the 3rd column
OR
a constant is added to 2nd row and a multiple of that to the last row, and another constant to 1st column and a multiple of that to the last column
And, is the the multiplication of the constant is same for each time?

Iniciar sesión para comentar.

Respuesta aceptada

Gaurav Garg
Gaurav Garg el 28 de Dic. de 2020
Hi Holmbrero,
I understand that you wish to add multiples of constants to each row. I am providing with a pseudo-code to help you do that -
for i=1:size(c,1)
for j=1:size(c,2)
c{i,j} = c{i,j} + constant * i
end
end
Assuming that 'c' is your cell array, the above code would add each cell element with a constant, depending on the row number.
You can similarly replicate the code to add each element with constant, depending on column number, like this -
for i=1:size(c,1)
for j=1:size(c,2)
c{i,j} = c{i,j} + constant * j
end
end
  1 comentario
Holmbrero
Holmbrero el 4 de En. de 2021
Hi!
Sorry for my late reply.
I solved it by creating two new matrices with the added constants and then simply added these to the cell array.
The problem was somehow sort of hard to describe but i think your solution is also appliciable.
Thank you for your help!

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

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

Etiquetas

Productos


Versión

R2018b

Community Treasure Hunt

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

Start Hunting!

Translated by