您好,欢迎访问三七文档
当前位置:首页 > 医学/心理学 > 医学试题/课件 > 《Mata应用初步》
统计与应用数学学院《统计分析软件》统计学系石绍炳128第10章矩阵——MataMata是在Stata9.0版本以后新增的执行矩阵计算的矩阵编程语言。10.1Mata基本操作10.1.1Mata进入与退出在Stata中,输入“mata”并回车后即可进入Mata状态,显示Mata的提示符“:”,此时可直接进行Mata运算。在Mata状态下输入“end”即可退回到Stata状态。如:------------------------------------------------------------------------------------------------------------------------------------mata//进入Mata状态-------------------------------------------------mata(typeendtoexit)---------::2+2//计算2+24:end//退出Mata状态,进入Stata状态---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------注意:第一、在Mata状态下,由双斜线(“//”)引导的标注句在命令窗口中必须连同双斜线(“//”)一起删除才能执行,但在在Do文件编辑窗口编写的语句不必删除标注句;第二、在Mata状态下,在Do文件编辑窗口编写的语句也不能单独执行。10.1.2数值与字符的输入在Mata中输入数值及字符非常直观简捷。------------------------------------------------------------------------------------------------------------------------------------mata//进入Mata状态-------------------------------------------------mata(typeendtoexit)---------:x=4//x赋值4:x//显示x4:y=x+2//y赋值为x+4:y//显示y6:z=x+y//z赋值为x+y:z//显示z10:a=”Ma”//a赋值为字符”Ma”:a//显示aMa:b=”ta”//b赋值为字符”ta”:c=a+b//c赋值为a与b的合并:c//显示cMata:end//退出Mata状态,进入Stata状态---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------10.1.3矩阵的输入在此只介绍矩阵的手工输入,至于从Stata数据集中的变量导入请见Mata函数“st_view()”与“st_data()”。Mata中,矩阵的输入以英文状态下的逗号(“,”)分隔各列,以反斜线(“\”)分隔各行。把向量作为只有一行或一列的矩阵。矩阵的每一个元素可以是实数、虚数或字符安徽财经大学《STATA应用初步》统计与应用数学学院129串。------------------------------------------------------------------------------------------------------------------------------------mata//进入Mata状态-------------------------------------------------mata(typeendtoexit)---------:A=(1,2\3,4)//输入矩阵A:A//显示矩阵AB12+---------+1|12|2|34|+---------+:B=(3/2,2\3,4)//输入矩阵B:B//显示矩阵B12+-------------+1|1.52|2|34|+-------------+:AB=(A,B)//AB为矩阵A与B的横向并接:AB//显示矩阵AB1234+-------------------------+1|121.52|2|3434|+-------------------------+:AB1=(A\B)//AB1为矩阵A与B的纵向串接:AB1//显示矩阵AB112+-------------+1|12|2|34|3|1.52|4|34|+-------------+:a=(1+1i,1-1i\2-4i,3+6i)//输入矩阵a:a//显示矩阵a12+-------------------+1|1+1i1-1i|2|2-4i3+6i|+-------------------+:b=(-1+1i,1+1i\2-4i,3+6i)//输入矩阵b:b//显示矩阵b12+---------------------+1|-1+1i1+1i|2|2-4i3+6i|+---------------------+:ab=(a,b)//矩阵a与b横向并接:ab//显示矩阵ab1234+-----------------------------------------+1|1+1i1-1i-1+1i1+1i|2|2-4i3+6i2-4i3+6i|+-----------------------------------------+:ab1=(a\b)//矩阵a与b纵向串接:ab1//显示矩阵ab112+---------------------+1|1+1i1-1i|2|2-4i3+6i|统计与应用数学学院《统计分析软件》统计学系石绍炳1303|-1+1i1+1i|4|2-4i3+6i|+---------------------+:Alpha=(a,b\c,d):Alpha12+---------+1|ab|2|cd|+---------+:Beta=(A,B\C,D):Beta12+---------+1|AB|2|CD|+---------+:AlphaBeta=(Alpha,Beta):AlphaBeta1234+-----------------+1|abAB|2|cdCD|+-----------------+:AlphaBeta1=(Alpha\Beta)12+---------+1|ab|2|cd|3|AB|4|CD|+---------+:end//退出Mata状态,进入Stata状态---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------10.1.4Mata的基本运算10.1.4.1复数与字符运算Mata可以对实数、虚数及字符进行运算。如同通常的Stata一样,Mata的运算符有代数运算符、逻辑运算符和关系运算符等,代数运算符、逻辑运算符和关系运算符如表10-1。表10-1Mata运算符代数运算符逻辑运算符关系运算符+加!(~)不(非)>大于-减|或<小于*乘&=大于等于^乘方=小于等于/除==等于~=(!=)不等于字符运算符为“+”,起到将字符或字符串进行合并的作用。------------------------------------------------------------------------------------------------------------------------------------mata//进入Mata状态-------------------------------------------------mata(typeendtoexit)-------:2+2//计算2+24:(2+23)&(3+5=10)//关系运算,结果为真时返回1,结果为假时返回00:x=2+2//计算x=2+2:x//显示x的值安徽财经大学《STATA应用初步》统计与应用数学学院1314:x~=3//关系运算,结果为真时返回1,结果为假时返回01:2-4i+3+6i//计算2-4i+3+6i5+2i:a=2-4i//a赋值为2-4i:a//显示a的值2-4i:b=3+6i//b赋值为3+6i:c=a+b//c赋值为a+b的运算结果:c//显示c的值5+2i:matrix+programming//字符串合并matrixprogramming:e=matrix//e赋值为字符串“matrix”:f=programming//e赋值为字符串programming:g=e+f//g赋值为e+f的运算结果:g//显示g的值matrixprogramming:end//退出Mata状态---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------10.1.4.2矩阵的运算矩阵的运算,除了有逻辑运算与关系运算外,还有与数值不同的代数运算,运算符如下表10-2所示:表10-2Mata矩阵代数运算符序号运算Mata命令说明1=±=±矩阵加减2=×=∗矩阵相乘,要求A的行数等于B的列数3==Kronecker积,为aij×4=或=T=转置5C=K×或=×K=K∗或=∗K数乘,K为纯量=K⁄=/K矩阵A除以纯量K矩阵的求逆在Mata函数中介绍。------------------------------------------------------------------------------------------------------------------------------------mata//进入Mata状态-------------------------------------------------mata(typeendtoexit)-------:A=(1,2\3,4):B=(-1,1\0,-2):A12+---------+1|12|2|34|+---------+:B12+-----------+1|-11|2|0-2|+-----------+:AB//关系运算,真时返回1,假时返回01统计与应用数学学院《统计分析软件》统计学系石绍炳132:C=A+B//计算C=A+B:C[symmetric]12+---------+1|0|2|32|+---------+:D=A*B//计算D=A×B:D[symmetric]12+-----------+1|-1|2|-3-5|+-----------+:E=A#B//计算D=AB:E1234+-----------
本文标题:《Mata应用初步》
链接地址:https://www.777doc.com/doc-3254607 .html