如何替换matlab矩阵中特定行/特定列的零值

例如,想要将矩阵第三行/第三列中的零值替换为随机数,这样的写法不成功,求问语法错在哪里

W(W(:,3)==0)=rand(); %将矩阵第三列中的0替换为随机数
W(W(3,:)==0)=rand(); %将矩阵第三行中的0替换为随机数

不知道你这个问题是否已经解决, 如果还没有解决的话:

如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 以帮助更多的人 ^-^