array indices must be positive integers or logical values.

5 次查看(过去 30 天)
i am getting this error
Array indices must be positive integers or logical values.
Error in tabular/dotParenReference (line 108)
b = b(rowIndices);
Error in tryout (line 12)
z1 = sum(y.resource (p:T).^2)
for the following lie of code
z1 = sum(y.resource (p:T).^2)
here i would be taking values from variable resource in table y, for which sum till end day of project(t) whose square is found.
i hope this explains the above line from code.
  2 个评论
aarthy reddy R
aarthy reddy R 2019-10-14
function[fitness_value] = tryout(x)
T = 18; %total number of days to complete project
oo = readtable ('datasheet.xlsx');
x1 = round(rand() );
p = bin2dec(num2str(x1))
x2 = round(rand() );
q = bin2dec(num2str(x2))
x3 = round(rand() );
r = bin2dec(num2str(x3))
z1 = sum(resource (p:T).^2)
z2 = sum(resource (q:18).^2)
z3 = sum(resource (r:18).^2)
A = [ z1 z2 z3 ];
fitness_value = max(A);
fitness_value = -1 * fitness_value;
end
this the code, here the value taken is binary so cannot be non positive
any suggestions please

请先登录,再进行评论。

采纳的回答

John D'Errico
John D'Errico 2019-10-14
编辑:John D'Errico 2019-10-14
p is sometimes zero. sometimes it is one. how you are creating p is a bit silly, as there is absolutely no reason to use bin2dec, and num2str is also a bit over the top. For example, I tried it twice, and I see:
>> x1 = round(rand() );
p = bin2dec(num2str(x1))
p =
1
>> x1 = round(rand() );
p = bin2dec(num2str(x1))
p =
0
But then you have the line:
z1 = sum(y.resource (p:T).^2)
if sometimes p is zero, then you create a vector p:T. Whenever p is zero, then p:T will be a vector that STARTS at zero.
When p is zero, can you use that vector as an index into the variable y.resource?
NO.
  1 个评论
aarthy reddy R
aarthy reddy R 2019-10-14
thank you so much your explanation is of great help
i have a doubt i have to choose different values for p but it must be less then 18
so i can do square of resources from that day till end
so i used rand funtion
can u provide any suggestions?

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Logical 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by