getting this error

1 次查看(过去 30 天)
??? Index exceeds matrix dimensions.
Error in ==> C:\Documents and Settings\krishnendu\Desktop\Chared ICA Code\CreateInitialEmpires.m
On line 4 ==> AllImperialistsCost = InitialCost(1:AlgorithmParams.NumOfInitialImperialists,:);
by using the code
AllImperialistsCost = InitialCost(1:AlgorithmParams.NumOfInitialImperialists,:);
AlgorithmParams.NumOfInitialImperialists=2;
initialcost is a matrix like [1 2 3 4 5]
where is the error?
X(1:2,:);
what does it mean?

采纳的回答

Andreas Goser
Andreas Goser 2012-1-31
This may be a confusion with rows and columns. E.g. this code here fails:
a=[1 2 3 ]
a(1:2, :)
Beacuse a is an 1x3 matrix and a(1:2, :) tries to access a nonexisting second row.

更多回答(1 个)

Walter Roberson
Walter Roberson 2012-1-31
X(1:2,:) means to take all columns of the first two rows of X.
Your initialcost matrix has only one row, so it is an error to try to take the first two rows of it since the second row does not exist.
Consider the possibility that your initialcost matrix should have at least 2 rows.

标签

产品

Community Treasure Hunt

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

Start Hunting!

Translated by