单元格矩阵中给定列中的Matlab操作

单元格矩阵中给定列中的Matlab操作,matlab,matrix,cell,Matlab,Matrix,Cell,我有一个单元格矩阵,第一列有字符串,第二列有数字。假设我想在第二列中执行相同的操作。如果这个细胞基质是普通基质,我可以: matrix(:,2)=matrix(:,2)*100; 但我不知道如何在细胞矩阵中进行,当我以不同的方式尝试时,它会给我带来错误: >> BKS{:,2}=BKS{:,2}*100 Error using * Too many input arguments. >> BKS(:,2)=BKS(:,2)*100 Unde

我有一个单元格矩阵,第一列有字符串,第二列有数字。假设我想在第二列中执行相同的操作。如果这个细胞基质是普通基质,我可以:

   matrix(:,2)=matrix(:,2)*100;
但我不知道如何在细胞矩阵中进行,当我以不同的方式尝试时,它会给我带来错误:

>> BKS{:,2}=BKS{:,2}*100
   Error using  * 
   Too many input arguments.

>> BKS(:,2)=BKS(:,2)*100
   Undefined function 'mtimes' for input arguments of type 'cell'.

如何使用matlab进行此操作?

使用
cellfun
(基本上是循环)


使用
cellfun
(基本上是循环)


提供替代方案:

BKS(:,2) = num2cell(100*[BKS{:,2}].');


提供替代方案:

BKS(:,2) = num2cell(100*[BKS{:,2}].');

BKS(:,2) = cellfun(@times, BKS(:,2), repmat({100}, size(BKS,1),1), 'UniformOutput', false);