如何从单个列矩阵中排除元素?

问题描述

我目前正在从Coursera学习Ng的机器学习。现在,在第3周的成本函数和梯度下降的正则化部分中,我需要排除对应于theta0的theta矩阵的第一个元素。我在命令行上尝试了一个虚拟矩阵:

a = [ 1; 2; 3; 4; 5; 6; 7]
a =1
   2
   3
   4
   5
   6
   7

我尝试了以下代码获取矩阵中除第一个元素外的所有元素:

1. a(2,:)

输出:2

2. a(2:,1)

输出:解析错误:语法错误

3. a(2:,1)

输出:解析错误:语法错误

4. a(2,:;1)

输出:解析错误:语法错误

5. a(2,::;1)

输出:解析错误:语法错误

6. a(2::,1)

输出:解析错误:语法错误

完成操作需要什么代码?叫什么矩阵法?

解决方法

应该是

a(2:end)

结果:

ans =

   2
   3
   4
   5
   6
   7

有关排除任何单个元素的一般情况,请参见Select all elements except one in a vector(关于Matlab,但用法在Octave中也相同)。