结束foreach循环

您所在的位置:网站首页 foreach语句用法 结束foreach循环

结束foreach循环

2024-01-14 01:26| 来源: 网络整理| 查看: 265

作者;江小白邮箱:[email protected]

在使用Stata进行数据处理的过程中,如果遇到繁复的处理任务,通常都可以借助Stata中的循环命令帮助我们减轻工作负担,从而准确快速的完成数据的整理。

在Stata流程语句中经常使用的有三类循环语言:while循环 forvalue循环 foreach循环。其中前两个语句主要针对数值型循环,有机会我们找个例子再写一写;而今天介绍的foreach循环循环的对象可以是数值 变量 或者文件。

foreach语句格式      foreach lname {in|of listtype} list {             commands referring to `lname'     }例如:     foreach lname in any_list {     foreach lname of local    lmacname   {     foreach lname of global   gmacname   {     foreach lname of varlist  varlist    {     foreach lname of newlist  newvarlist {     foreach lname of numlist  numlist    {

格式书写中有几点需要注意:括号的使用必须符合示例格式的要求,第一个括号要出现在foreach的同一行,而且执行命令不要写在第一个括号后面,最后的结束括号必须单独成行。

foreach 任务示例

如上格式所述,foreach循环对象多样,下面通过几个示例语句来展示其功能。

循环append合并

  合并当前数据库中的多个文件  foreach file in this.dta that.dta theother.dta {          append using "`file'"  }

循环局部宏

 **定义一个局部宏,然后对于局部宏执行循环命令 **这里展示displaylocal life "春花 秋月 夏风 冬雪"   foreach x of local life {           display "`x'"   }

循环全局宏

**定义一个全局宏,然后对于全局宏执行循环命令**这里展示display   global start "天枢 天璇 天玑 天权 玉衡 开阳 摇光"   foreach y of global start {          display "`y'"   }

变量循环

**调用示例数据,对于所有变量都执行sum操作 sysuse auto,clear  foreach v of varlist make-foreign {  sum `v'    }

循环生成变量

**生成100个变量,且每个变量都是均匀分布的随机数 clearset obs 100  foreach v of newlist a1-a100 {   gen `v'=uniform()    } 

数值循环

**对于数值进行循环**示例表示的数列是1 ,4到8,13到21其中步长为2,103**这里展示display foreach num of numlist 1 4/8 13(2)21 103 {                display `num'        }***数值循环时如果对于等距数值进行循环一般不用foreach**可以直接用forvalues   例如  forvalues x = 1/1000 {        ...        ...        }**foreach必须存储元素列表,而forvalue通过计算一次获取一个元素

以上主要介绍foreach循环的使用,熟知上述的几种用法,可以在命令中变换使用想要执行的循环操作,都可以轻松简便的完成Stata数据处理的工作。

更多的Stata相关知识可以关注Stata中文社区~

9abb07291df2a3aef1423f951ab1c92c.png



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3