rita 发表于 2007-4-17 18:52

请教高手

现在有个80*80的矩阵,,我在计算时要去掉其第30行,第40列。。请问用什么命令

eight 发表于 2007-4-17 20:10

原帖由 rita 于 2007-4-17 18:52 发表
现在有个80*80的矩阵,,我在计算时要去掉其第30行,第40列。。请问用什么命令


a(30,40)=[]; 不过这样生成的a可能有问题

[ 本帖最后由 eight 于 2007-4-17 20:13 编辑 ]

rita 发表于 2007-4-18 08:02

我试了一下,,不行呀,,出错。

rita 发表于 2007-4-18 08:03

我其实是想去掉全部为0的行和列,,这个有没有什么方法

sffei 发表于 2007-4-18 08:50

a(30,:)=[];
a(:,40)=[];

eight 发表于 2007-4-18 10:20

原帖由 sffei 于 2007-4-18 08:50 发表
a(30,:)=[];
a(:,40)=[];


估计不是这样简单地去掉,按照她的意思,是去掉某个矩阵中所有行或列为零的元素

eight 发表于 2007-4-18 10:25

a =
   0   0   0    -3   0
   1   0   0   0   0
   0   2   0   0   0
   0   0   0   0   0
   0   0   0   0   0


>> a(:,~sum(abs(a),1))=[]
a =
   0   0    -3
   1   0   0
   0   2   0
   0   0   0
   0   0   0
>> a(~sum(abs(a),2),:)=[]
a =
   0   0    -3
   1   0   0
   0   2   0

这个意思吗?

[ 本帖最后由 eight 于 2007-4-18 10:28 编辑 ]

rita 发表于 2007-4-18 10:28

谢谢

如果就只是想去掉第5行第5列。。而元素又不全为0那

eight 发表于 2007-4-18 10:29

原帖由 rita 于 2007-4-18 10:28 发表
如果就只是想去掉第5行第5列。。而元素又不全为0那


你先搞清楚矩阵的概念,如果只去除 (5,5),那么这就不构成一个矩阵了,不知道我是否正确理解你的意思

rita 发表于 2007-4-18 10:33

我是要求解一个矩阵的特征值,而我的边界条件里给定的是,特征向量必须有一个值为0。我就只能去掉矩阵中这行这列才能计算呀

eight 发表于 2007-4-18 10:40

原帖由 rita 于 2007-4-18 10:33 发表
我是要求解一个矩阵的特征值,而我的边界条件里给定的是,特征向量必须有一个值为0。我就只能去掉矩阵中这行这列才能计算呀

其实你举个例子就可以了,不需要说明你的问题背景,例如:

a =
   0   0   0    -3   0
   1   0   0   0   0
   0   2   0   0   0
   0   0   0   0   0
   0   0   0   0   0

假设上述 a 能够说明你的问题,那么请回答你希望的输出是什么。如果这个 a 不能说明你的问题,那么请你另外举个有代表性的例子吧

rita 发表于 2007-4-18 10:42

再请教一下您,polyeigh函数的调用,如果输入的矩阵有零矩阵,是不是解出的结果一定有0值,,

eight 发表于 2007-4-18 10:43

原帖由 rita 于 2007-4-18 10:42 发表
再请教一下您,polyeigh函数的调用,如果输入的矩阵有零矩阵,是不是解出的结果一定有0值,,


这个不懂,没有用过

rita 发表于 2007-4-18 10:55

谢谢您了。。我整明白了

rita 发表于 2007-4-18 10:58

想问一下,对于一组复数,想按其实部从小到大排序,用什么命令。。。
页: [1] 2
查看完整版本: 请教高手