暑期Stata培训班招生啦!!!
接力线上的网课培训,我们在今夏又开始新一轮的线下培训啦!
8月4日至12日
,爬虫俱乐部期待与您的相遇!培训具体内容详见推文
《
暑期Stata编程技术定制培训班
》
。
有问题,不要怕!点击推文底部“
阅读原文
”下载爬虫俱乐部用户问题登记表并按要求填写后发送至邮箱
[email protected]
,我们会及时为您解答哟~
喜大普奔~爬虫俱乐部的github主站正式上线了!我们的网站地址是:
https://stata-club.github.io
,粉丝们可以通过该网站访问过去的推文哟~
好消息:爬虫俱乐部即将推出研究助理供需平台,如果您需要招聘研究助理(Research Assistant or Research Associate),可以将您的需求通过我们的公众号发布;如果您想成为一个RA,可以将您的简历发给我们,进入我们的研究助理数据库。帮我们写优质的推文可以提升您被知名教授雇用的胜算呀!
drop
顾名思义“掉、降”,在Stata中具有“删除”的含义,主要用于删除我们不需要的变量或观测值,此外还与
duplicates、graph、label
等命令结合来删除重复值、图片、标签。
运用drop删除数据是贯穿数据处理过程中不可或缺的小环节,使用频率较高。下面以Stata中的auto数据为例来展示drop系列命令的用法。
clear all
sysuse auto,clear
ds
可以看出Stata中带有的auto数据集中,共有如下12个变量。
如果我们想要删除前三列变量,可运行如下两行命令之一,结果如下图。
drop make price mpg
drop make-mpg
ds
此外,还可以使用如下的命令进行批量删除。
sysuse auto,clear
drop m*
//删除以m开头的所有变量,即make mpg
ds
drop _all
//删除所有的变量和观测值
(1)删除含有缺失值的行。
sysuse auto,clear
count
drop if rep78==.
//删除rep78的缺失值对应的行
count
可以看rep78一共有5个缺失值,包含该5个缺失值的行被我们删除了。
(2)使用missings命令删除含有缺失值的行。
使用
missings
命令可以达到(1)中相同的效果。如果初次使用
missings
需安装。可使用
net installdm0085_1
命令安装missings的包dm0085_1,也可以通过
findit missings
命令查找到missings的安装包并进行安装。
sysuse auto,clear
count
missings dropobs rep78,force
count
当
missings dropobs
后面缺省变量名称时,表示删除所有变量均为缺失值的行。
(3)使用dropmiss命令删除含有缺失值的行。
dropmiss
也是对缺失值删除的处理,同时也是外部命令,初次使用需要安装,可使用
net install dm89_2
命令进行安装,也可以通过
findit dropmiss
命令查找到dropmiss的安装包并进行安装。
sysuse auto,clear
count
dropmiss,obs any
//不管哪个变量,只要含有缺失值的行都会被删除。
count
可以看出在我们的
auto
数据中有5行含有缺失值,该5行被我们删除。
(4)删除重复值。
sysuse auto,clear
duplicates tag mpg rep78, generate(dup)
//生成dup变量,表示除自身外,有其他多少行的mpg、rep78值与该行重复。
sort mpg rep78
由上图可以看出
mpg
和
rep78
重复的行,以及重复的数量。
sort price
在删除mpg和rep78重复的行之前,按照price升序排序,这样保留的就是mpg rep78重复中,价格最低的一行。如果此前不先进行排序,则会按照数据默认的顺序保留mpg和rep78重复的第一行。
duplicates drop mpg rep78,force
//
删除mpg和rep78观测值重复的行,只保留第一行。即价格最低行。
sort mpg rep78
此外,当
duplicates drop
后面的变量名缺省时表示对所有变量的观测值都重复的行进行删除,只保留第一行。
(5)删除特定行
sysuse auto,clear
drop in 1/2
//删除前两行
drop in -2/-1
//删除最后两行
drop if price > 10000 | price < 8000
//删除价格高于10000或者是价格低于8000的行。
此外,还可以在组内删除满足某一条件的观测值或变量,举例如下。
sysuse auto,clear
gsort rep78 -price
//按照汽车修理记录升序排列,然后在相同的修理记录中,按照价格降序排列。
bysort rep78: drop if _n != _N
//在每一组rep78相同的组中,只保留最后一行,即价格最低的行。
首先我们先绘制两张图,并保存在
E:\stataclub
路径下,命名为
graph1、graph2
。
clear all
cap mkdir E:\stataclub
cd E:\stataclub
sysuse auto,clear
twoway scatter price mpg
graph save Graph graph1,replace
twoway histogram price
graph save Graph graph2,replace
使用
graph drop
命令可以删除Stata内存中的图片,但是
E:\stataclub
中的
graph1
文件并不会被删除。
graph drop Graph
若想要删除
E:\stataclub
路径下的
graph1
文件,则需要使用
erase
。
erase graph1.gph
此时,文件中的
graph1
文件被删除。
sysuse auto,clear
label define make 1 AMC 2 Buick 3 Cad
//定义标签
label list
可以看出,我们所设置的
make
标签,1表示
AMC
、2表示
Buick
、3表示
Cad
;和原来已有的
origin
标签。
label drop make
//删除make标签
label list
可以看到,
make
标签被我们删除。
注:此推文中的图片及封面(除操作部分的)均来源于网络!如有雷同,纯属巧合!
以上就是今天给大家分享的内容了,说得好就赏个铜板呗!有钱的捧个钱场,有人的捧个人场~。
另外,我们开通了苹果手机打赏通道,只要扫描下方的二维码,就可以打赏啦!
应广大粉丝要求,爬虫俱乐部的推文公众号打赏功能可以开发票啦,累计打赏超过1000元我们即可给您开具发票,发票类别为“咨询费”。用心做事,只为做您更贴心的小爬虫。第一批发票已经寄到各位小主的手中,大家快来给小爬虫打赏呀~
往期推文推荐:
1.爬虫俱乐部新版块--和我们一起学习Python
2.hello,MySQL--Stata连接MySQL数据库
3.hello,MySQL--odbcload读取MySQL数据
4.再爬俱乐部网站,推文目录大放送!
5.用Stata生成二维码—我的心思你来扫