# multiply/divide two cells array

12 visualizaciones (últimos 30 días)
shobhit mehrotra el 15 de Abr. de 2015
Comentada: Renato Agurto el 15 de Abr. de 2015
I have two cell arrays that have the exact same amount of elements
A: cell 1: [2, 5, 8, 9]
cell 2: [ 5, 7, 3]
cell 3: [ 5, 3]
B: cell 1: [ 1 ,8, 6, 3]
cell 2: [ 4, 2, 7]
cell 3: [ 8, 9]
I want to multiply each element of A by B, (cell 1= [2 40 48 27] ) so I get a new cell array C
I have this
C= cellfun(@x, A(x)*B(x), 'UniformOutput',false)
Thanks!
##### 0 comentariosMostrar -2 comentarios más antiguosOcultar -2 comentarios más antiguos

Iniciar sesión para comentar.

Renato Agurto el 15 de Abr. de 2015
Hi, you need a 2 input function:
C= cellfun(@(x,y) x*y, A,B, 'UniformOutput',false)
Alternatively:
C = num2cell(cell2mat(A).*cell2mat(B))
I hope this helps
##### 2 comentariosMostrar NingunoOcultar Ninguno
Dishant Arora el 15 de Abr. de 2015
It should be a dot product:
C= cellfun(@(x,y) x.*y, A,B, 'UniformOutput',false)
Renato Agurto el 15 de Abr. de 2015
You'are right. I though it was a a cell array with single double elements.

Iniciar sesión para comentar.

### Categorías

Más información sobre Resizing and Reshaping 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