transition probability matrix and for loop
조회 수: 4 (최근 30일)
이전 댓글 표시
I would like to run transition matrix with a rolling window, such that it ensures the transitions for consecutive periods such as: 31-12-17 (start date) to 31-12-18, then move by one month : 31-01-18 (start date) to 31-01-19 and so on, and save data in each transMat so that it can be retrieved later
That is what works
"transMatRD = zeros(5);
UD=unique(data.Date,'stable');
UD=sort(UD);
for i=1:25
[transMatRD] = transprob(data,'startDate',UD(i),'endDate',UD(i+12),'algorithm',algorithm,'snapsPerYear',snaps,'labels',{'A','B','C','D','E'})
disp(['The initial date: ',string(sUD3(i)),' the end date: ',string(sUD3(i+12)), 'transitions: ', string(snaps)])
end"
This works fine if I run it but I cannot save all transMatRD matrices (other than the last one).
If I try this however
"
for i=1:25
[transMatRD(i)] = transprob(data,'startDate',UD(i),'endDate',UD(i+12),'algorithm',algorithm,'snapsPerYear',snaps,'labels',{'A','B','C','D','E'})
"
I get this error:
"Unable to perform assignment because the left and right sides have a different number of elements."
I would like to save all transition matrices in order to perform operations on them (average, sum, weight...)
댓글 수: 0
채택된 답변
Voss
2024년 1월 31일
transMatRD = cell(5); % 5x5 cell array
for i=1:25
transMatRD{i} = transprob(...)
end
추가 답변 (0개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Dates and Time에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!