erorr with the function
8 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Hi I'm trying understand why the following notification of an error appears on the command window ">> fillMissingData Index exceeds matrix dimensions.
Error in fillMissingData (line 17) tday=varargin(1);" but I can not . Can Somebody show what is wrong with this function
function my_prices=fillMissingData(prices, varargin)
% my_prices=fillMissingData(prices) fills missing price with previous
% day's price
% my_prices=fillMissingData(prices, tday, cday) fills missing prices with previous day's price including non-trading days
% as specified in cday
if (nargin == 1)
my_prices=prices;
for t=2:size(my_prices, 1)
missData=~isfinite(my_prices(t, :, :));
my_prices(t, missData)=my_prices(t-1, missData);
end
else
% We deal only with 2 dim prices array here.
tday=varargin(1);
cday=varargin(2);
my_prices=NaN*zeros(size(cday, 1), size(prices, 2));
tdayIdx=find(tday==cday(1));
if (~isempty(tdayIdx))
my_prices(1, :)=prices(tdayIdx, :);
end
for t=2:size(my_prices, 1)
tdayIdx=find(tday==cday(t));
if (~isempty(tdayIdx))
my_prices(t, :)=prices(tdayIdx, :);
missData=find(~isfinite(my_prices(t, :)));
my_prices(t, missData)=my_prices(t-1, missData);
else
my_prices(t, :)=my_prices(t-1, :);
end
end
end
0 Kommentare
Antworten (1)
Siehe auch
Kategorien
Mehr zu Matrix Indexing finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!