正如其他人所说,在每个时间表中创造新的变量似乎很少有意义,每个变量是常数的列向量。也许你想要一些这样的东西。
首先,制作类似您的数据:
n = 3;
tt_list = cell(n,1);
为了I = 1:3
x =兰特(5,1);
时间=日期时间(2020,5,I)+天(兰特(5,1));
tt_list {i} =时间表(时间,x);
结尾
现在可以获得每个时间表的统计数据,并将其中的表格放在包含的时间表数组中:
t =表(tt_list,零(n,1),零(n,1),零(n,1),'variablenames',[“数据”,“中庸”,“最小”,“最大”]);
为了我= 1:n
t.mean(i)=均值(tt_list {i} .x);
t.min(i)= min(tt_list {i} .x);
t.max(i)= max(tt_list {i} .x);
结尾
从那里,你最终结束了
>> T
t =
3.×4表
数据意思闵最大限度
____________________________________
{5.×1时间表} 0.67375 0.4607 0.94475
{5.×1时间表} 0.56289 0.15039 0.9865
{5.×1时间表} 0.52956 0.26661 0.91785
这是蛮力方式。由于纪尧姆建议,你可能会发现它方便的把所有的时间表,在一个较长的一个。下面让你基本上YHE同一张桌子上面。
TT = vertcat(TT_列表{:});
tt.source = Repelem(1:n,5)';
Fun = @(x)交易(平均(x),min(x),max(x));
t = rowfun(有趣,tt,'GroupingVariable'那'来源'那'numoutputs',3,......
'输出格式'那'桌子'那'outputvariablenames',[“意思是”min“”max“])
>> T =
3.×5表
来源GroupCount.意思闵最大限度
_____________________________________
1 5 0.67375 0.4607 0.94475
2 5 0.56289 0.15039 0.9865
3 5 0.52956 0.26661 0.91785
我用rowfun;splitapply或groupsummary也将工作。