24小时热门版块排行榜    

CyRhmU.jpeg
南方科技大学公共卫生及应急管理学院2025级博士研究生招生报考通知
查看: 1733  |  回复: 4

pdl9527

专家顾问 (小有名气)

[求助] MATLAB结构体数组的基本计算问题已有2人参与

如果有一个结构体 a.mix   a(1).mix=1    a(2).mix=2;
b=3;
为什么a.mix/b会报错?

还有如果b=[2 3];
b.*a.mix为什么也会报错?

该如何实现以上的计算????
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

dnp

荣誉版主 (知名作家)

小木虫浪子

优秀版主

【答案】应助回帖

★ ★ ★ ★ ★
感谢参与,应助指数 +1
pdl9527: 金币+5, ★★★★★最佳答案 2014-06-16 21:10:04
不同类型的数据不能进行运算。
若要进行以上的运算,必须将所有数组变成统一类型结构的。matlab有很多函数可以将一种结构的数据换成另外一种结构的数据,比如cell2mat等。
对于结构体,可以采用cat函数;
CODE:
>> a(1).mix=1; a(2).mix=2;
>> b=3;
>> cat(1,a.mix)/b

ans =

         0.333333333333333
         0.666666666666667

What would Jesus do?
2楼2014-06-16 14:44:45
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

xiaogang1a2b

金虫 (小有名气)

【答案】应助回帖

感谢参与,应助指数 +1
a.mix返回的是一个逗号表达式,并不是一个array。所以像楼上说的要转换。
心若向阳,无畏伤悲。
3楼2014-06-16 17:26:39
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

pdl9527

专家顾问 (小有名气)

引用回帖:
2楼: Originally posted by dnp at 2014-06-16 14:44:45
不同类型的数据不能进行运算。
若要进行以上的运算,必须将所有数组变成统一类型结构的。matlab有很多函数可以将一种结构的数据换成另外一种结构的数据,比如cell2mat等。
对于结构体,可以采用cat函数;

> ...

非常感谢!
4楼2014-06-16 21:09:42
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

pdl9527

专家顾问 (小有名气)

引用回帖:
3楼: Originally posted by xiaogang1a2b at 2014-06-16 17:26:39
a.mix返回的是一个逗号表达式,并不是一个array。所以像楼上说的要转换。

非常感谢
5楼2014-06-16 21:10:22
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 pdl9527 的主题更新
信息提示
请填处理意见