matlab怎么给数据编号

问题

原始数据

img

想要的结果(下图)

img

我的解答思路和尝试过的方法

我试过循环,但每个Trade Date下的数据时多时少没有规律。

我需要Trade Date每一个日期下的数据,都按出现顺序插入编号。

比方说:

T = table({19860701, 19860702,19860703, 19860701, 19860702}',...
    'variablename',{'Trade Date'});
c = T{:,1};
[b, ia, ic] = unique([c{:}], 'stable');
for i = 1:numel(ia)
    p = find(ia(i)==ic);
    q = 1:numel(p);
    ic(p) = q;
end
T = table([T{:,1}, mat2cell(ic, ones(numel(ic),1), 1)], 'variablename',{'Trade Date'})

结果

T =

  5×1 table

         Trade Date      
    _____________________

    {[19860701]}    {[1]}
    {[19860702]}    {[1]}
    {[19860703]}    {[1]}
    {[19860701]}    {[2]}
    {[19860702]}    {[2]}