单元格阵列中乘以因子的部分

问题描述 投票:0回答:1

我想在Matlab中乘以单元数组的一部分(请参见下面的示例。)>

my_cell1 = {'a', 'b', 'c'; 'd', '1', '2'; 'e', '3', '4'};
% Looks like:
% a b c
% d 1 2
% e 3 4
my_cell2 = my_cell1;
my_cell2(2:3, 2:3) = num2cell(str2double(my_cell2(2:3, 2:3)) * 2); %Multiply the numbers by factor 2
my_cell3 = {'a', 'b', 'c'; 'd', '2', '4'; 'e', '6', '8'};
isequal(my_cell2, my_cell3) %False

[显然,my_cell2不等于my_cell3。似乎是这种情况,因为my_cell2中的数字现在已加倍,不再是字符串/字符。但是,当我尝试将它们用作字符串时,出现错误:

my_cell2 = my_cell1;
my_cell2(2:3, 2:3) = num2str(str2double(my_cell2(2:3, 2:3)) * 2); %Error: Conversion to cell from char is not possible.

如何将my_cell2相乘,使其最后等于my_cell3

我想在Matlab中乘以单元数组的一部分(请参见下面的示例)。 my_cell1 = {'a','b','c'; 'd','1','2'; 'e','3','4'}; %看起来像:%a b c%d 1 2%e 3 4 my_cell2 = my_cell1; my_cell2(2:...

string matlab double cell cell-array
1个回答
0
投票

[使用cellfun添加一个中间步骤以将cellfun应用于(子)单元格数组中的每个单元格:

© www.soinside.com 2019 - 2024. All rights reserved.