Subscript indices must either be real positive integers or logicals.

2 次查看(过去 30 天)
Hi All,
I have a function that runs perfectly in my main script. But after running the code when I publish a report, it gives me an error "Subscript indices must either be real positive integers or logicals." I'm confused, any help?
the function is
function [rf] = Spot2Forward(m,data)
data=data.*0.01;
for i=2:size(data,1)
for j=[4,5,6,9,12]
rf(i,j)= (12./m).*((1 + data(i,j).*(((j-3) + m)/12))./(1 + data(i,j-1).*((j-3)/12)) - 1);
end
end
end

回答(2 个)

Stalin Samuel
Stalin Samuel 2015-12-18
编辑:Stalin Samuel 2015-12-18
i tried with random data..i am not getting any error
data= rand(100,100);%for example
m = 2
data=data.*0.01;
for i=2:size(data,1)
for j=[4,5,6,9,12]
rf(i,j)= (12./m).*((1 + data(i,j).*(((j-3) + m)/12))./(1 + data(i,j-1).*((j-3)/12)) - 1);
end
end

Walter Roberson
Walter Roberson 2015-12-18

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by