1、第一种输入矩阵的方式:
matrix A = (1,2,3 \ 4,5,6) /*定义一个名为A的两行三列的矩阵,逗号作为列的分隔,反斜线作为行的分隔,多行多列同理。注意反斜线的前后要加空格,否则斜线和数字挨到一起stata不识别*/
2、第二种输入矩阵的方式:
另一种输入矩阵的方式,更加直观,采用 #delimit ; 命令断行
note: 输入的矩阵只是存储在内存中,并不在数据窗口中呈现,通过下列命令可以查看:
matrix list A /*matrix list 加上矩阵名,matrix可以简写成mat list A*/
matlist B /*matlist 与 matrix list 作用相同,只是显示出来的美观程度稍有不同而已*/
mat list C, nohalf /*对称矩阵默认只显示对角线及下半部分,若要全显示,加上 nohalf 的option即可*/
matrix dir /*显示内存中存储的所有矩阵及其行列数*/
3、矩阵元素的修改:
mat A[1,2] = 20 /*表示对A矩阵的第一行第二列的元素进行修改*/
mat A[1,2] = (99,100) /*如要对多个元素进行修改,只需要指定修改的起始行列位置即可*/
4、矩阵的加、减、乘、转置、求逆:
mat M = A + B /*加法*/
mat M = A - B /*减法*/
mat M = A*B /*乘法,注意A矩阵的列和B矩阵的行要一致*/
mat A1 = A' /*A矩阵的转置,矩阵转置要优于乘法,如 mat A2 = A'*B' 会先转置后乘*/
mat invA = inv(A) /*对A矩阵求逆*/