![Stata统计分析与行业应用案例详解(第2版)](https://wfqqreader-1252317822.image.myqcloud.com/cover/500/26943500/b_26943500.jpg)
1.3 创建和替代变量
1.3.1 创建和替代变量概述
前面已经介绍了创建、修改数据文件和变量的通用方式,但在有些情况下,我们需要利用现有的变量生成一个新的变量,那么如何快捷方便地实现这种操作呢?Stata 14.0提供了generate以及replace命令以供我们选择使用,其中generate命令是利用现有变量生成一个新的变量,并保留原来的变量不变;而replace命令则是利用现有变量生成一个新的变量替换原来的变量。下面我们就用实例的方式来讲解一下这两个重要命令的应用。
1.3.2 相关数据来源
![](https://epubservercos.yuewen.com/82CDCB/15367245804192406/epubprivate/OEBPS/Images/figure_0021_0001.jpg?sign=1738888514-Pat1sMadB3nNbCpn4kCEKjS0Hx97DtfU-0-6f5bac423877147ccbbf9c88f9068a4b)
【例1.2】我国2009年各地区的就业人口以及工资总额数据如表1.2所示。请使用Stata命令进行操作:(1)试生成新的变量来描述各地区的平均工资情况;(2)试生成平均工资变量来替代原有的工资总额变量;(3)对生成的平均工资变量数据均做除以10的处理;(4)对就业人口变量进行对数平滑处理,从而产生新的变量。
表1.2 我国2009年各地区的就业人口及工资总额
![](https://epubservercos.yuewen.com/82CDCB/15367245804192406/epubprivate/OEBPS/Images/figure_0021_0002.jpg?sign=1738888514-6fSxOzQKGmomcPwgNnhfEZnK7B7zg08Q-0-ccfe0586bd8ffb874b25f5ce797c6fa4)
1.3.3 Stata分析过程
在用Stata进行分析之前,我们要把数据录入到Stata中。本例中有3个变量,分别是地区、就业人口、工资总额。我们把地区变量设定为region,把就业人口变量设定为people,把工资总额变量设定为sumwage,变量类型及长度采取系统默认方式,然后录入相关数据。相关操作我们在1.2节中已有详细讲述。录入完成后,数据如图1.8所示。
![](https://epubservercos.yuewen.com/82CDCB/15367245804192406/epubprivate/OEBPS/Images/figure_0022_0002.jpg?sign=1738888514-goTqtoK0NOvJm8SiiYzAN1wxXFHkZ3Ol-0-76c5a5e4df29b0d5f882723e739d4dc3)
图1.8 案例1.2数据
先做一下数据保存,然后开始展开分析,步骤如下:
进入Stata 14.0,打开相关数据文件,弹出如图1.9所示的主界面。
![](https://epubservercos.yuewen.com/82CDCB/15367245804192406/epubprivate/OEBPS/Images/figure_0022_0003.jpg?sign=1738888514-iYD8yP6N7fLeNbj4j8gyZFZyr3ZPmIyj-0-c1ccb4fe239368e5b13ab97b6ca6614b)
图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数据。
![](https://epubservercos.yuewen.com/82CDCB/15367245804192406/epubprivate/OEBPS/Images/figure_0023_0001.jpg?sign=1738888514-jxaZYJKZEwGoTABgWEkLpFuCipj7OVKg-0-da4b7c2bc46b54e116e724d2c418d9fd)
图1.10 “avwage”数据
选择“Data”|“Data Editor”|“Data Editor(Browse)”命令,进入数据查看界面,可以看到如图1.11所示的sumwage数据,等于总工资除以总职工数。
![](https://epubservercos.yuewen.com/82CDCB/15367245804192406/epubprivate/OEBPS/Images/figure_0023_0002.jpg?sign=1738888514-dgsxLUAV7fPLKHOqdJa2tXFGiJHPMXLv-0-89806b26fe27605bf876ccc3547619c0)
图1.11 平均工资
选择“Data”|“Data Editor”|“Data Editor(Browse)”命令,进入数据查看界面,可以看到如图1.12所示的sumwage数据,即前面生成的平均工资数据除以10。
![](https://epubservercos.yuewen.com/82CDCB/15367245804192406/epubprivate/OEBPS/Images/figure_0023_0003.jpg?sign=1738888514-LAFAFckJ4w4viiDx4ZaobEJevOBk97nb-0-0d097cc145d9e8361ef532124e4106da)
图1.12 平均工资除以10
选择“Data”|“Data Editor”|“Data Editor(Browse)”命令,进入数据查看界面,可以看到如图1.13所示的lpeople数据。它是针对people数据取的对数值。
![](https://epubservercos.yuewen.com/82CDCB/15367245804192406/epubprivate/OEBPS/Images/figure_0023_0004.jpg?sign=1738888514-lMr3GosVrcdUmgIARu7tnTbLuK413kUN-0-f017f5ff9a97e6400657a4e91a2fca06)
图1.13 对就业人口进行对数平滑处理
1.3.5 案例延伸
在上面的案例中,我们用到了代数运算符“/”。在Stata 14.0中,我们可以使用的代数运算符如表1.3所示。
表1.3 代数运算符
![](https://epubservercos.yuewen.com/82CDCB/15367245804192406/epubprivate/OEBPS/Images/figure_0023_0005.jpg?sign=1738888514-OOZKf3dLoDs41yMGAkxw9lLCeT0FFBsX-0-8d0c794a02a70829840f95cdf2e45615)
在上面的案例中,我们也用到了自然对数函数ln(变量)。在Stata 14.0中,我们经常使用的函数如表1.4所示。
表1.4 函数
![](https://epubservercos.yuewen.com/82CDCB/15367245804192406/epubprivate/OEBPS/Images/figure_0024_0001.jpg?sign=1738888514-5a812diPWgqGm8sNtRT3fBCnCRz1QhZD-0-953ff6e96eaf130ff682ef2aff70ded7)