table 的三角形部分

Triangular part of a table

我想访问带有单元格元素的(正方形)table 的下三角部分。我尝试了 tril 函数,但它不适用于 'cell' 类型的输入参数。有什么解决方法吗?谢谢

这是你想要的吗?

c = {1, [2 3], 4; [5 6 7], [8 9], 10; 11, 12, [13 14]}; %// example 3x3 cell array
mask = tril(true(size(c,1), size(c,2))); %// creat mask
result = c(mask); %// index cell array with mask

这会生成一个列元胞数组,其中所选单元格按列优先顺序排列:

result{1} =
     1
result{2} =
     5     6     7
result{3} =
    11
result{4} =
     8     9
result{5} =
    12
result{6} =
    13    14