1. 获取矩阵行列数量
>>A = [1 2; 3 4; 5 6];
>>size(A) % 返回矩阵行列数量
ans =
3 2
>>size(A,1) %返回矩阵行数
ans = 3
>>size(A,2) %返回矩阵列数
ans = 2
>>
2. 向量的维数
>>v = [1;2;3;4];
>>length(v) % 如果是矩阵,返回的是最大的维度
ans = 4
3. 加载文件中数据
首先切换到文件所在路径:
>>pwd %打印当前工作路径
ans = C:\Users\hyf04
>>cd Documents\octave % 切换工作路径
>>ls %显示当前路径下所有文件
Volume in drive C has no label.
Volume Serial Number is 4E5D-A0B5
Directory of C:\Users\hyf04\Documents\octave
[.] ex1data1.txt gradientDescentMulti.m submit.m
[..] ex1data2.txt ml_login_data.mat submitWeb.m
computeCost.m ex1_multi.m normalEqn.m
加载数据:
>>load ex1data1.txt %也可以 load('ex1data1.txt')
显示数据:
>>who % 显示所有变量名
Variables in the current scope:
A I ans ex1data1 v w
>>disp(ex1data1) %加载数据的变量名,是该文件的名称
6.11010 17.59200
5.52770 9.13020
8.51860 13.66200
7.00320 11.85400
4. 存储数据
>>temp = ex1data1(1:5,:) % 将前5行的数据赋值给temp
temp =
6.1101 17.5920
5.5277 9.1302
8.5186 13.6620
7.0032 11.8540
5.8598 6.8233
>>save temp.txt temp % 存储temp变量中的数据到temp.txt中
>>save temp.txt temp -ascii
5. 元素的获取与修改
>>A = [1 2; 3 4; 5 6];
>>A(2,1) = 1 %修改第2行第一列的数据为1
A =
1 2
1 4
5 6
>>A(:,2) = [3;2;1] %修改第2列的数据。 :表示every row/column
A =
1 3
1 2
5 1
>>A = [A,[7;8;9]] %矩阵A追加1列。
A =
1 3 7
1 2 8
5 1 9
>>A([1,3],:) = 1 %第1和第3行的所有元素值改为1。
A =
1 1 1
1 2 8
1 1 1
>>A(1:3,2) = 4 %第1行到第3行,第2列的数据改为4。
A =
1 4 1
1 4 8
1 4 1