Stata软件的临时变量、临时矩阵和临时文件

2021年10月28日09:00:59Stata软件的临时变量、临时矩阵和临时文件已关闭评论

有些时候,程序在运行的过程中需要产生一些临时的变量、矩阵等,而一旦程序运行结束,这些变量、矩阵等就不再需要。在这种情况下,我们可以生成临时变量。

生成临时变量的命令格式为:

     tempvar var1 var2 …

这里,tempvar是生成临时变量的基本命令,var1、var2代表临时变量的名称。确切地说,命令tempvar生成的是临时变量的名称,我们后面可以使用这些名称来生成临时变量,这些临时变量在程序结束时会被自动删除。此外,tempvar生成的变量名被保存在局部宏内,在后面引用时需要加引号。

临时变量的一个优点在于,即便内存中已存在相同名称的变量,也不必先将其删除,不会影响我们定义临时变量。

例如,我们要定义并生成两个临时变量x和y(可能内存中已有变量是这个名称,但没有关系),可输入命令:

     tempvar x y
     gen 'x'= …
     gen 'y'=…

第2步和第3步是生成相应的临时变量。这里没有给出具体的表达式,因为这完全视具体情况而定。需要注意的是,在命令tempvar之后,我们引用临时变量时都需要加上局部宏的引号。

类似的,定义临时矩阵或临时标量的命令为:

     tempname ms1 ms2 …

tempname是定义临时矩阵或临时标量的基本命令,ms1、ms2等代表临时矩阵或临时变量的名称。

同样的,定义临时文件的命令为:

     tempfile file1 file2 …

这里,file1、file2代表临时文件的名称。例如,在程序中可能会出现这样的命令:

     preserve  //保存初始数据
     tempfile males females //定义临时文件males和females
     keep if sex==1 /*保留变量sex取值为1的观测值*/
     save "`males'" /*将这些观测值保存到临时文件male中*/
     restore, preserve  //恢复原始数据
     keep if sex==0 //保留变量sex取值为0的观测值
     save "`females'" //将这些观测值保存到临时文件female中

与临时变量相同,在程序结束时,Stata会自动删除临时矩阵、临时标量或临时文件。

  • 版权声明:本篇文章(包括图片)来自网络,由程序自动采集,著作权(版权)归原作者所有,如有侵权联系我们删除,联系方式(QQ:452038415)。