【问题标题】:In Matlab, error using length(x), gives subscript indicies error在 Matlab 中,使用长度(x)的错误,给出下标索引错误
【发布时间】:2012-10-19 06:28:09
【问题描述】:

我从 .dat 文件中提取与时间相关的数据,并使用样条函数,将这些值与正在使用的现有时间向量进行匹配。由于某种原因,长度函数无法读取向量的长度。

我可以用这个简介重现错误:

x = linspace(1,98,76)';
y = 20.*x-5.*x.^2;
t = linspace(0,100,1000)';
yy = spline(x,y,t);
length(yy)

返回

???下标索引必须是实数正整数或逻辑数。

它在我的工作区中显示 yy 是 1000x1 双倍,并且 max(size(yy)) 工作正常。知道是什么造成了这个错误吗?

【问题讨论】:

  • 我在 Linux Mint 的 R2012b 上运行该代码时没有收到错误消息。尝试将clear 添加到您的简介顶部,如果它开始正常工作,那么您就会知道Praetorian 的想法是正确的。
  • 我在 ubuntu 10.04 上的 R2010b 中也没有收到错误。

标签: matlab vector size spline


【解决方案1】:

您的工作区中可能有一个名为length 的变量。使用whos 命令查看是否是这种情况。

whos length

这将打印出变量length(如果存在)的大小和类型。

【讨论】:

    猜你喜欢
    • 2016-08-26
    • 1970-01-01
    • 1970-01-01
    • 2018-03-20
    • 2013-01-01
    • 2021-06-30
    • 2018-02-02
    相关资源
    最近更新 更多