【发布时间】:2014-04-05 15:35:30
【问题描述】:
我已经为我的作业尝试了这段代码,但我收到了类型错误
??? Subscript indices must either be real positive integers or logicals.
这是我的代码:
for i = 5:200
eigvecm = eigvecm(:, end:-1:end-(int8(i)-1));
end
请指出如何完成这项工作?
【问题讨论】:
-
哇!你在干嘛?使用“i”作为迭代器,然后在循环本身中更改“eigvecm”,然后使用“end”作为索引。
-
in eigvecm=eigvecm(:,
end:-1:end-(int8(i)-1))你想在这里做什么? -
我正在尝试从 eigvecm 矩阵中获取最大的 'i' 列,如果我使用 5 等数字,它可以正常工作,但是当我使用 'i' 作为变量时它不起作用。跨度>
-
这里到底发生了什么,它会给出与第 i 个最大特征值相对应的第 i 个特征向量。
-
另请参阅this question 以获取处理此错误的generic approach。
标签: matlab for-loop pca eigenvector eigenvalue