24小时热门版块排行榜    

CyRhmU.jpeg
查看: 1402  |  回复: 3

caolinggirl

金虫 (小有名气)

[求助] 由已知矩阵根据运算法则求另一个矩阵

已知矩阵A的大小是20*4。求矩阵B,其中B矩阵中的元素值为:矩阵A中的元素除以该元素所在行的所有元素和。例如:
A=[1 2 3 4
     5 6 7 8
    .......]
B=[1/10 2/10 3/10 4/10
     5/26 6/26 7/26 8/28
        ...]
matlab 如何简单实现
回复此楼

» 猜你喜欢

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

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

QHxwzs

银虫 (初入文坛)

【答案】应助回帖

感谢参与,应助指数 +1
A=rand(20,4);
B=zeros(20,4);
for i=1:length(A)
B(i,=A(i,/sum(A(i,);
end

» 本帖已获得的红花(最新10朵)

2楼2013-10-07 02:04:18
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

libralibra

至尊木虫 (著名写手)

骠骑将军

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★
感谢参与,应助指数 +1
caolinggirl: 金币+20, ★★★★★最佳答案, 扩展的好巧妙,谢谢了 2013-10-07 10:05:59
向量化的操作方法
CODE:

% 原矩阵
A=[1 2 3 4
     5 6 7 8]
% 每一行求和
suma = sum(A,2)
% 将和矩阵扩展为与A相同size的矩阵
fulla = repmat(suma,[1,size(A,2)])
% 直接点除,得到矩阵B,就是结果
B = A./fulla

matlab/VB/python/c++/Java写程序请发QQ邮件:790404545@qq.com
3楼2013-10-07 02:38:00
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

caolinggirl

金虫 (小有名气)

送红花一朵
引用回帖:
2楼: Originally posted by QHxwzs at 2013-10-07 02:04:18
A=rand(20,4);
B=zeros(20,4);
for i=1:length(A)
B(i,=A(i,/sum(A(i,);
end

其实,我有些没看明白。
4楼2013-10-07 10:09:26
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 caolinggirl 的主题更新
信息提示
请填处理意见