Raise elements of cell arrays in the power of 2
2 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
gsourop
le 18 Nov 2016
Commenté : Jay shankar Nanda
le 29 Mar 2021
Hi everyone,
I have a cell array A of 2x100, where each element is a scalar and I want to raise in the power of 2. I have tried:
for k=1:2;
for t=1:100;
A2{k,t}=A{k,t}.^2;
end;
end;
But it doesn't work. Thanks in advance.
2 commentaires
Jay shankar Nanda
le 29 Mar 2021
x={2,3,4};
>> x(2).^2
Undefined operator '.^' for input arguments of type 'cell'.
kindly tell how to access the input argumentand raise it to power
Réponse acceptée
James Tursa
le 18 Nov 2016
Modifié(e) : James Tursa
le 18 Nov 2016
Like this?
A = 2x100 cell array of scalars
A2 = mat2cell(cellfun(@(x)x.^2,A),ones(1,2),ones(1,100));
SIDE NOTE:
Your posts seem to indicate that you have a lot of scalar data in cell arrays that you want to do basic matrix arithmetic/functions with. Is there a reason you have this data in cell arrays rather than double matrices? It would be a lot easier (and cleaner) to maintain this data as double matrices in your code rather than in cell arrays unless you have some specific reason to have the cell arrays.
0 commentaires
Plus de réponses (1)
Voir également
Catégories
En savoir plus sur Resizing and Reshaping Matrices dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!