本文作者:刘畅,河南大学经济学院
本文编辑:马梦杰
技术总编:李婷婷
Stata and Python 数据分析
爬虫俱乐部Stata基础课程、Stata进阶课程和Python课程可在小鹅通平台查看,欢迎大家多多支持订阅!如需了解详情,可以通过课程链接(https://appbqiqpzi66527.h5.xiaoeknow.com/homepage/10)或课程二维码进行访问哦~
1.导读
clear allsysuse auto.dtatab mpg

2.distinct命令
distinct命令主要用于报告不同观测值的数量,当变量观测值为(1,5,3,2,2,2,3,3,6,6),则distinct的返回值则为5,即该变量存在5个不同的观测值。
*安装命令ssc install distinct, replace
其中, varlist是待处理的变量(一个或者多个),另外可以配合missing、abbrev、joint、minimum和maximum等选项使用。
missing:表示包括缺失值,默认不包括;
abbrev:定义显示变量的最大字符,若定义的字符长度小于字符串的长度,字符串就会进行转换。比如字符串headroom 的长度是8,利用 abbrev(4) 转换后,就会变为 hea~m;
joint:确定多个变量下不同联合取值的数量;
minimum:表示可返回变量的最小不同观测值数;
maximum:表示可返回变量的最大不同观测值数。
我们使用Stata自带数据来举例:
*举例sysuse auto.dtadistinct mpg
图中,我们看到变量mpg共存在74个观测值,其中distinct的返回值为21,说明存在21个不同的观测值,这个变量存在重复值。同样的,使用distinct加joint选项,可以分析该数据集在不考虑缺失值情况下存在多少个不同的观测值。
*举例sysuse auto.dtadistinct, jointdistinct, max(25)
结果显示,该数据集在不考虑缺失值的情况下,拥有69个不同的观测值,同时数据集中的各变量,其最大不同观测值数小于25的共有6个,分别是 mpg、rep78、headroom、trunk、turn和foreign。
3.vardistinct命令
vardistinct命令能够帮助生成一个新的变量来表示不同观测值数量。
*安装命令ssc install vardistinct, replace
命令语法:
*举例clear allsysuse auto.dtavardistinct mpg, generate(v1)tab v1 ///也可以直接通过查看v1的取值数来判断存在多少不同的观测值

*举例clear allsysuse auto.dtavardistinct mpg, by(foreign) generate(v2)tab foreigntab v2 foreign///也可以直接通过查看v2的取值数来判断存在多少不同的观测值

4.简单实际应用
clear allcd "D:\stata17\数据"use 学号.dta
*使用distinct命令distinct 学号*使用vardistinct命令vardistinct 学号, generate(v1)tab v1
可以看出,两个命令结果相同,共有38个同学参与了这些运动。使用以上两个命令就能够较为容易的得到变量的取值个数了,对于只需要检索不同观测值数量且数据集较大的情况,可以尝试一下,希望能为同学们的学习或者生活有所帮助。
重磅福利!为了更好地服务各位同学的研究,爬虫俱乐部将在小鹅通平台上持续提供金融研究所需要的各类指标,包括上市公司十大股东、股价崩盘、投资效率、融资约束、企业避税、分析师跟踪、净资产收益率、资产回报率、国际四大审计、托宾Q值、第一大股东持股比例、账面市值比、沪深A股上市公司研究常用控制变量等一系列深加工数据,基于各交易所信息披露的数据利用Stata在实现数据实时更新的同时还将不断上线更多的数据指标。我们以最前沿的数据处理技术、最好的服务质量、最大的诚意望能助力大家的研究工作!相关数据链接,请大家访问:(https://appbqiqpzi66527.h5.xiaoeknow.com/homepage/10)或扫描二维码:
对我们的推文累计打赏超过1000元,我们即可给您开具发票,发票类别为“咨询费”。用心做事,不负您的支持!
往期推文推荐
Stata压缩和解压缩文件的几种方法
【python库——whisper】实现音频转换成文字功能
用Python进行乳腺癌预测的简单机器学习
足不出户的“世界之旅”
【爬虫实战】python文本分析库——Gensi
Python可视化-绘制三维空间空间图形
使用Stata遍历文件的多种方式
Python构造数据透视表
Python可视化-Bokeh库
基于Python的文本摘要提取
微信公众号“Stata and Python数据分析”分享实用的Stata、Python等软件的数据处理知识,欢迎转载、打赏。我们是由李春涛教授领导下的研究生及本科生组成的大数据处理和分析团队。
武汉字符串数据科技有限公司一直为广大用户提供数据采集和分析的服务工作,如果您有这方面的需求,请发邮件到statatraining@163.com,或者直接联系我们的数据中台总工程司海涛先生,电话:18203668525,wechat: super4ht。海涛先生曾长期在香港大学从事研究工作,现为知名985大学的博士生,爬虫俱乐部网络爬虫技术和正则表达式的课程负责人。
此外,欢迎大家踊跃投稿,介绍一些关于Stata和Python的数据处理和分析技巧。

