Stata统计分析与行业应用案例详解(第2版)
上QQ阅读APP看书,第一时间看更新

1.3 创建和替代变量

1.3.1 创建和替代变量概述

前面已经介绍了创建、修改数据文件和变量的通用方式,但在有些情况下,我们需要利用现有的变量生成一个新的变量,那么如何快捷方便地实现这种操作呢?Stata 14.0提供了generate以及replace命令以供我们选择使用,其中generate命令是利用现有变量生成一个新的变量,并保留原来的变量不变;而replace命令则是利用现有变量生成一个新的变量替换原来的变量。下面我们就用实例的方式来讲解一下这两个重要命令的应用。

1.3.2 相关数据来源

【例1.2】我国2009年各地区的就业人口以及工资总额数据如表1.2所示。请使用Stata命令进行操作:(1)试生成新的变量来描述各地区的平均工资情况;(2)试生成平均工资变量来替代原有的工资总额变量;(3)对生成的平均工资变量数据均做除以10的处理;(4)对就业人口变量进行对数平滑处理,从而产生新的变量。

表1.2 我国2009年各地区的就业人口及工资总额

1.3.3 Stata分析过程

在用Stata进行分析之前,我们要把数据录入到Stata中。本例中有3个变量,分别是地区、就业人口、工资总额。我们把地区变量设定为region,把就业人口变量设定为people,把工资总额变量设定为sumwage,变量类型及长度采取系统默认方式,然后录入相关数据。相关操作我们在1.2节中已有详细讲述。录入完成后,数据如图1.8所示。

图1.8 案例1.2数据

先做一下数据保存,然后开始展开分析,步骤如下:

进入Stata 14.0,打开相关数据文件,弹出如图1.9所示的主界面。

图1.9 主界面

在主界面的“Command”文本框中输入如下操作命令并按键盘上的回车键进行确认。


●generate avwage= sumwage/ people:本命令的含义是生成新的变量来描述各地区的平均工资情况。

●replace sumwage= sumwage/ people:本命令的含义是生成平均工资变量来替代原有的工资总额变量。

●replace sumwage= sumwage/ 10:本命令的含义是对生成的平均工资变量数据均做除以10的处理。

●gen lpeople=ln( people):本命令的含义是对就业人口变量进行对数平滑处理,从而产生新的变量。

设置完毕后,按键盘上的回车键,等待输出结果。

1.3.4 结果分析

选择“Data”|“Data Editor”|“Data Editor(Browse)”命令,进入数据查看界面,可以看到如图1.10所示的avwage数据。

图1.10 “avwage”数据

选择“Data”|“Data Editor”|“Data Editor(Browse)”命令,进入数据查看界面,可以看到如图1.11所示的sumwage数据,等于总工资除以总职工数。

图1.11 平均工资

选择“Data”|“Data Editor”|“Data Editor(Browse)”命令,进入数据查看界面,可以看到如图1.12所示的sumwage数据,即前面生成的平均工资数据除以10。

图1.12 平均工资除以10

选择“Data”|“Data Editor”|“Data Editor(Browse)”命令,进入数据查看界面,可以看到如图1.13所示的lpeople数据。它是针对people数据取的对数值。

图1.13 对就业人口进行对数平滑处理

1.3.5 案例延伸

在上面的案例中,我们用到了代数运算符“/”。在Stata 14.0中,我们可以使用的代数运算符如表1.3所示。

表1.3 代数运算符

在上面的案例中,我们也用到了自然对数函数ln(变量)。在Stata 14.0中,我们经常使用的函数如表1.4所示。

表1.4 函数