Matlab中的armax函数

我有一个时间序列data,想用arma模型进行拟合matlab代码:z=iddata(data);m=armax(z,[3,2]);请问为什么老是报错说我的armax用的... 我有一个时间序列data,想用arma模型进行拟合
matlab代码:
z=iddata(data);
m=armax(z,[3,2]);
请问为什么老是报错说我的armax用的不对啊?
百度查的好多人都这么用啊。。
??? Error using ==> armax at 65
The estimation data set must contain an output channel.

报错如上
展开
 我来答
百度网友687a7d0
2013-05-24 · TA获得超过9412个赞
知道大有可为答主
回答量:2021
采纳率:85%
帮助的人:1007万
展开全部
data必须是列向量

When data is a time series, which has no input and one output, then
orders = [na nc]

z中的数据是来自iddata的返回值
所以应该是 z=iddata(y,x)%x是输入y是输出
如果z=iddata([],x)%只有出入没有输出
如果z=iddata(y,x)%即有输入又有输出

例如:我随意定义

y=sin(0:0.1:40);
data=iddata(y');
m= armax(data,[2 3])

Discrete-time IDPOLY model: A(q)y(t) = C(q)e(t)
A(q) = 1 - 1.99 q^-1 + q^-2

C(q) = 1 - 0.2973 q^-1 + 0.08516 q^-2 + 0.179 q^-3

Estimated using ARMAX on data set data
Loss function 2.95475e-030 and FPE 3.0288e-030
Sampling interval: 1
追问
我知道了,我错在没有令data转置,我的data是一个1*1098的序列,我应该写z=iddata(data')就没问题了,谢谢
Sievers分析仪
2025-07-02 广告
是的。传统上,对于符合要求的内毒素检测,最终用户必须从标准内毒素库存瓶中构建至少一式两份三点标准曲线;必须有重复的阴性控制;每个样品和PPC必须一式两份。有了Sievers Eclipse内毒素检测仪,这些步骤可以通过使用预嵌入的内毒素标准... 点击进入详情页
本回答由Sievers分析仪提供
fisher_man1990
2013-05-24 · TA获得超过1231个赞
知道小有建树答主
回答量:217
采纳率:100%
帮助的人:210万
展开全部
表示需要知道你的数据,加QQ向我咨询:544402256 验证信息:matlab百度
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式