24小时热门版块排行榜    

查看: 4534  |  回复: 7
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

guiqulai2046

新虫 (小有名气)

[求助] 如何将一个向量赋值给三维数组中的一部分 已有2人参与

假设有一个三维数组A=zeros(10,10,3),和一个向量b=[1 1 0], 现在想把A(1:2, 1:2, 赋值成b,即A(1,1,=A(1,2,=A(2,1,=A(2,2,=b。
想用快捷的方法实现上述功能,因为实际中A很大,不能一个一个的写出来。用A(1:2, 1:2, =b出错,显示维数不匹配。
请指点,谢谢大家。
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

dnp

荣誉版主 (知名作家)

小木虫浪子

优秀版主

引用回帖:
5楼: Originally posted by dnp at 2014-05-17 20:08:15
用个循环吧
for ii = 1:2
for jj = 1:2
A(ii,jj, = b;
end
end

CODE:
for ii = 1:2
for jj = 1:2
A(ii,jj,:) = b;
end
end

What would Jesus do?
6楼2014-05-17 20:09:15
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 8 个回答

baobiao007

木虫 (职业作家)

中国特色

【答案】应助回帖

感谢参与,应助指数 +1
把矩阵中的一部分数据赋给一个向量,这必须满足一个前提啊:两者的数据个数一样多
我同意叔本华的观点,人们投身艺术和科学领域的强烈愿望之一就是逃离痛苦、残酷和枯燥无味的现实生活,逃离自己飘忽不定的七情六欲的桎梏。--爱因斯坦
2楼2014-05-17 18:26:38
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

guiqulai2046

新虫 (小有名气)

谢谢楼上,不过我是需要把向量赋给矩阵中的一部分。
而且我发现上面提问的帖子里冒号+括号都变成笑脸了,救命。。重发一次:

假设有一个三维数组A=zeros(10,10,3),和一个向量b=[1 1 0], 现在想把A(1:2, 1:2,:) 赋值成b,即A(1,1,:)=A(1,2,:)=A(2,1,:)=A(2,2,:)=b。
想用快捷的方法实现上述功能,因为实际中A很大,不能一个一个的写出来。用A(1:2, 1:2,  =b出错,显示维数不匹配。
请指点,谢谢大家。
3楼2014-05-17 18:32:35
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

guiqulai2046

新虫 (小有名气)

假设有一个三维数组A=zeros(10,10,3),和一个向量b=[1 1 0], 现在想把A(1:2, 1:2,:) 赋值成b,即A(1,1,:)=A(1,2,:)=A(2,1,:)=A(2,2,:)=b。
想用快捷的方法实现上述功能,因为实际中A很大,不能一个一个的写出来。用A(1:2, 1:2, :)=b出错,显示维数不匹配。
请指点,谢谢大家。
4楼2014-05-17 18:33:12
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
信息提示
请填处理意见