0

我是 MATLAB 的新手。我已经编写了一个代码来对数据进行上采样。执行时总是会显示特定的错误(如下)

???输入参数“n”未定义。==> 7 mm=min(n) 处的上采样误差

但是当我只写下面的内容时。输出 [n1,y]=upsamp([1,2,3,4,5,6],-1:4,3) 命令窗口,它显示了正确的上采样数据及其图形。

那为什么会弹出错误?或者我只需单击运行按钮,命令窗口中就会显示错误。

请帮我调试该错误:

我的代码是

function[n1,y]=upsamp(n,x,I)

mm=min(n)
mx=max(n)
n1=mm*I:(mx*I+I-1)
x1=x'
x1=[x1,zeros(length(x),I-1)]
x1=x1'
y=(x1(:))'

subplot(2,1,1)
stem(n,x)
title('original sequence ')
xlabel('Range')
ylabel('sequence')

subplot(2,1,2)
stem(n1,y)
title(' unsampling')
xlabel('Range')
ylabel('sequence')

end
4

3 回答 3

3

正如其他人所指出的,如果要运行接受输入参数的函数,则必须从命令提示符处手动调用它,并使用任何必需的参数。

否则,如果您喜欢使用编辑器中的运行按钮 (F5) ,请考虑创建运行配置(它们可以以智能 方式使用)

运行配置

于 2011-10-22T04:08:25.253 回答
1

“运行”按钮仅适用于脚本(即只是顶部没有“功能”的简单语句列表)。这是一个函数,因此只能像您描述的那样从 matlab 命令行调用它。

于 2011-10-22T01:57:11.593 回答
0

运行按钮不带参数调用您的函数。

由于你的函数的参数是非可选的,你会得到一个错误。

从交互式命令行窗口调用您的函数,或者编写一个提供适当参数的简短脚本,然后使用该脚本的“运行”按钮。您仍然可以单步执行您的功能。

于 2011-10-22T02:28:28.137 回答