lesley 发表于 2006-4-9 11:00

[求助]怎样把矩阵的某一行删掉呢?谢谢!

你好,我现在遇到个问题,<BR> 把一个矩阵复制后,发现有很多行都是零,想把这些行删掉,我该怎么写语句呢?<BR>我正急着解决这个问题,请指点吧,谢谢!<BR>我用:a(1,:)=[],这种写法运行不行呀

cdwxg 发表于 2006-4-9 11:35

<P>可以的啊!<BR>错误是什么呢?</P>

lesley 发表于 2006-4-9 12:08

回复:(cdwxg)可以的啊!错误是什么呢?

你帮我看看就是这个程序:<BR>for i=1:n<BR>for j=i+1:n<BR>    if J_i(i,j)~=0<BR>      J_i(j,:)=[];<BR>    end<BR>end<BR>end<BR><BR>报Indexed empty matrix assignment is not allowed,这个错误

lesley 发表于 2006-4-9 12:45

你帮我看看就是这个程序:<BR>for i=1:n<BR>for j=i+1:n<BR>    if J_i(i,j)~=0<BR>      J_i(j,:)=[];<BR>    end<BR>end<BR>end<BR>运行时报的错误是:Index of element to remove exceeds matrix dimensions.<BR>指点指点吧,在线等呢.

happy 发表于 2006-4-9 15:21

回复:(lesley)[求助]怎样把矩阵的某一行删掉呢?谢谢...

a =;<BR>for i=1:4<BR>    if sum(a(i,:).^2)==0<BR>      a(i,:)=[];<BR>    end<BR>end

cdwxg 发表于 2006-4-9 15:29

回复:(happy)回复:(lesley)[求助]怎样把矩阵的某...

if sum(a(i,:).^2)==0<br>这个语句换成if a(i,:)==0不行么?教授
[此贴子已经被作者于2006-4-9 15:35:40编辑过]

happy 发表于 2006-4-9 15:33

回复:(lesley)[求助]怎样把矩阵的某一行删掉呢?谢谢...

<P>可以的,这是我习惯性问题</P>
[此贴子已经被作者于2006-4-9 15:33:47编辑过]

cdwxg 发表于 2006-4-9 15:38

晕死<BR>你这习惯也忒逻辑严谨了点吧<BR>楼主还有问题可以问happy教授了哈<BR>免得明天老板批评你:)

lesley 发表于 2006-4-9 18:27

回复:(cdwxg)晕死你这习惯也忒逻辑严谨了点吧楼主还...

<P>我改了程序,能够删掉,<BR>但是循环多次后,就要出问题,说超出矩阵范围,因为删了一行后,<BR>矩阵的行数就减少一行了.</P>
页: [1]
查看完整版本: [求助]怎样把矩阵的某一行删掉呢?谢谢!