考虑此代码:
T = table(categorical({'M';'F';'M'}),[45;32;34],logical([1;0;0]),...
'VariableNames',{'Gender','Age','Vote'},...
'RowNames',{'NY';'CA';'MA'});
M = containers.Map('KeyType','int32','ValueType','any');
M(1) = T;
现在,我想通过在映射M
中在现有键的循环内添加另一个表(此处为同一表)来扩展值。我尝试过:
for i=1:5
if isKey(M, 1)
cur_content = M.values;
cur_content{end+1} = T;
M(1) = cur_content;
end
end
因此,我在地图上的预期内容应如下所示:
Key: 1, {table_1}, {table_2}, {table_3}, {table_4}, {table_5}
Key: n, {table_1}, ... {table_k}
我在这里做什么错了?
答案 0 :(得分:1)
首先,您想要一个单元格数组作为分配给key的值:
M(1) = {T};
接下来,您要扩展此单元格数组,而不是扩展地图的内部values
数组:
cur = M(1);
cur{end+1} = T;
M(1) = cur;
这有意义吗?