stata连享会

stata小白之二:数据标签与排序

2017-12-24  本文已影响1265人  谢作翰

作者:谢作翰 | 连玉君 | (知乎 | 简书 | 码云)

编者按: 从本期开始,Stata 连享会将推出「Stata小白系列」推文,介绍数据导入、命令语法等 Stata 入门知识,以帮助各位尽快掌握 Stata 的基本操作。


目录
一 数据调入

0 概念区分

  1. 调入本地标准文件
  1. 调入网络文件
  1. 大杀器copy命令——从下载地址直接储存文件或复制网页文本信息
  2. 调入ASCII数据
  1. 调入excel数据——import excel &xls2dta

二 数据标签与排序

  1. 数据标签
  1. 数据排序—— sort& gsort

三 数据拆分与合并

四 长宽数据转换—— reshape命令


数据文件:链接: https://pan.baidu.com/s/1qXRh9EG 密码: 5ltw


数据标签

为了让用户更加清楚地了解数据的来源、变量的含义、观测值的解释等相关内容, Stata可以为数据、变量、观测值添加标签,其实标签就是对相关数据的解释。最常用的标签方法有三类:一是为数据库添加标签,二是为变量添加标签,三是为观测值添加标签

  1. 为数据库添加标签

命令label data ["label"]

在这个命令语句中, label data是为数据库添加标签的命令语句, ["label"]代表所要添加的标签的内容

  1. 为变量添加标签

命令label variable varname ["label"]
label variable是为变量添加标签的命令语句, varname代表所要添加标签的变量名称, ["label"]代表所要添加的标签的内容。

  1. 为数值添加标签

对于数值型的分类变量,单纯通过数值很难判断其含义,例如用 0 和 1 区分性别,但是很难区分 0 是代表男性还是女性,这时如果给数值添加标签,就方便用户理解了。

为数值添加标签是通过两步来完成的,第一步是定义数值标签:

命令为

 label define lblname  "label" [ "label" ...] [, add modify nofix]

说明label define是定义数值标签的命令语句 lblname代表所要定义的数值标签的名称, #代表所要定义的数值, "label"代表所要添加的标签的内容。需要用户注意的是后方 options的内容,其中 add的作用是添加标签内容, modify的作用是对已存在的标签内容做修改, nofix的作用是要求Stata不为标签的内容而改变原变量的存储容量
第二步是将所定义的数据标签与相关变量结合
基本命令为

label values varname [lblname] [, nofix]

在这个命令语句中, label values是将定义的数据标签与相关变量结合的语句, varname代表将要添加标签的变量名称, [lblname]代表刚刚定义的数据标签名称。

通过下面的例子——给 usaauto.dta数据库添加三类标签,为大家介绍标签的使用方法, usaauto数据文件如表所示

usaauto

导入数据:

 use "D:\360Downloads\PanDownload\操作数据\教程数据\chap02\usaauto.dta", clear

①为整个数据库添加标签“1978年美国汽车产业的横截面数据”

其命令如下:

label data “1978年美国汽车产业的横截面数据”

这个命令语句中 label data表示为数据库添加标签,“1978年美国汽车产业的横截面数据”指明了标签的内容。

数据库标签

②为变量 makempg添加标签“品牌”和“每加仑油行使里程数”,

其命令如下:

label variable make “品牌”
label variable mpg “每加仑油行使里程数”

label variable表示为变量添加标签, make “品牌”表示要添加标签的变量和标签的内容。

变量标签

③ 为数值添加标签

变量 foreign为分类变量,0 代表国产,1 代表进口,为了便于观察,为01 添加标签,

具体命令为:

label define foreignlabel 0 “Domestic” 1 “Foreign”
label values foreign foreignlabel

label define表示定义标签的内容, foreignlabel表示标签的名称, 0 “Domestic” 1 “Foreign”表示定义的规则,数字0的标签是国产车,数字1的标签是进口车

设置前
设置后

label values表示将定义的标签与变量结合的命令,所要结合的变量为 foreign,结合的标签为 foreignlabel。标签添加完成以后,可以通过 label dir命令,查看已经建立标签的相关内容。

数据排序

为了处理数据的方便,有时需要对数据进行排序处理,排序的命令有主要有两个,一个是 sort命令,一个是 gsort命令

sort命令的基本语句是:

sort varlist [in] [, stable]

在这个命令语句中, sort是基本命令, varlist代表将要进行排序的变量名称, [in]代表排序的范围, [, stable]的含义是如果两个观测值相同,其顺序保持与原数据相同。
gsort 命令的基本语句是:

 gsort [+|-] varname [[+|-] varname ...] [, generate(newvar) mfirst]

其中需要说明的内容有两点:

usaauto数据文件中的观测值按变量 price由小到大排列,这个操作可以用 sort命令完成,具体操作如下:

sort price

当然也可以用gsort命令完成,具体操作如下:

gsort + price

本文中所用数据文件下载地址:

数据文件:链接: https://pan.baidu.com/s/1qXRh9EG 密码: 5ltw

关于我们

联系我们

特别说明

文中包含的链接在微信中无法生效。请点击本文底部左下角的【阅读原文】,转入本文【简书版】


Stata连享会二维码
上一篇 下一篇

猜你喜欢

热点阅读