大数跨境
0
0

使用usesome命令来精确控制你的数据导入

使用usesome命令来精确控制你的数据导入 Stata and Python数据分析
2024-05-21
1
导读:Do not, for one repulse, forego the purpose that you resolved to effect.——William Shakespeare

本文作者:刘恒新,河南大学经济学院

本文编辑:马梦杰

技术总编:李婷婷

Stata and Python 数据分析

爬虫俱乐部Stata基础课程Stata进阶课程Python课程可在小鹅通平台查看,欢迎大家多多支持订阅!如需了解详情,可以通过课程链接(https://appbqiqpzi66527.h5.xiaoeknow.com/homepage/10)或课程二维码进行访问哦~

 


导论

Stata是一个强大的统计分析软件,提供了众多命令供大家处理和解析数据。但是,当与大数据集合工作时,加载、处理所有数据可能是一项耗时、内存密集型任务。在这种情况下,usesome 命令是一个较为方便的工具,因为它允许你选择性地加载数据,只使用需要的部分。这意味着你可以减少所需内存和处理时间,因此可以用更少的资源进行更有效的分析。

现在,让我们深入了解下如何使用usesome命令



usesome命令

usesome命令旨在方便地只将数据集的一部分加载到内存中。这个命令适用于有效处理大型数据集,因为它允许用户仅选择性地加载必要的变量,这可以显著提高性能和资源利用率。该命令还提供了一些额外的选项,用以控制加载过程中的具体行为,例如是否清除内存中的现有数据,是否加载值标签等。
以下是 usesome 命令的基本语法和选项
usesome varspec [if] [in] using filename [, options]usesome [if] [in] using filename [, options selection-options]
Options选项部分如下:

clear

在加载新数据之前清除内存中的现有数据

nolable

加载数据时不加载值标签

not

反转选择,加载未在varspec中指定的变量

has(spec)

加载与特定模式或条件匹配的变量

not(spec)

加载不符合特定模式或条件的变量

insensitive

执行不区分大小写的模式匹配

findname(findname-options)

加载findname命令返回的变量

这个命令非常有用,当需要从一个大的数据集中只加载一部分变量时,可以通过指定变量名、变量位置或者匹配模式来精确控制加载的内容


基础用法

当我们在写论文或处理文件数据时,需要从大型数据集中选择性地加载特定变量,usesome这一命令对于处理包含数百甚至数千个变量的数据集尤其有用,可以显著提高数据处理的效率。
下图中是Stata自带的数据集“auto.dta”,其中的变量非常多,我们可能只需要查询其中几个变量的数据,因此我们可以用usesome命令来进行数据导入。

(1)我们可以先读取数据中前两个变量和后两个变量的数据:
cd d:/stata/clear allsysuse auto.dtausesome (1/2 -2/-1) using auto.dta,clear
得到结果如下图所示:


(2)我们还可以使用not选项加载除了price和weight的所有变量:
usesome price weight using auto.dta,clear not
如下图所示,我们发现表格中加载了除了price和weight的所有变量。

(3)使用has(spec)和not(spec)选项可以精确地筛选与特定模式或条件匹配的变量。具体包括:
我们能使用not(vallabel)选项加载表格中所有不带有值标签的变量,如下所示:
usesome using auto.dta,clear not(vallabel)
得到结果如下图所示,只保留了原数据中不带有值标签的变量:

如果想要加载带有值标签的变量,则将公式中的not改为has,例如:
usesome using auto.dta,clear has(vallabel)
得到结果如下图所示,只保留了原数据中带有值标签的变量:

我们还能匹配整数型的变量:
usesome using auto.dta,clear has(type int)

得到结果如下图所示,只保留了原数据中的数值型变量:

只匹配字符型的变量:
usesome using auto.dta,clear has(type str#)
得到结果如下图所示,只保留了原数据中的字符型变量:

(4)同时处理数值型与字符型变量:

以has(type numeric 1/2)为例。这个特定的条件组合“numeric 1/2”表示变量可以是任何数值类型或者是str1 或 str2。numeric表示该变量是数值型的,这包括了所有的基本数值类型如int,long,float,double等。1/2 是一种简写形式,用来表示 str1 到 str2 的范围,即这个命令同时也会匹配类型为 str1和str2的字符串类型变量。
因此,当你使用 has(type numeric 1/2) 这个命令时,你是在查找所有数值型变量以及类型为str1和str2 的字符串变量:
usesome using auto.dta,clear has(type numeric 1/2)
得到结果如下图所示,只保留了原数据中的数值型变量以及字符串长度小于2的变量。由于make变量字符串超过2字符,因此未显示:

总的来说,Stata的usesome命令是一种功能强大的工具,可以优化你的数据分析,特别是在处理大型数据集时。探索Stata的usesome命令,快速高效地从大数据集中选取您需要的变量,节省时间又提高效率!使用usesome,您可以轻松指定和加载所需的列,无需加载整个数据集。试试看吧!下一期,我们将深入探讨其它Stata提供的有趣和有用的命令。敬请期待!


重磅福利!为了更好地服务各位同学的研究,爬虫俱乐部将在小鹅通平台上持续提供金融研究所需要的各类指标,包括上市公司十大股东、股价崩盘、投资效率、融资约束、企业避税、分析师跟踪、净资产收益率、资产回报率、国际四大审计、托宾Q值、第一大股东持股比例、账面市值比、沪深A股上市公司研究常用控制变量等一系列深加工数据,基于各交易所信息披露的数据利用Stata在实现数据实时更新的同时还将不断上线更多的数据指标。我们以最前沿的数据处理技术、最好的服务质量、最大的诚意望能助力大家的研究工作!相关数据链接,请大家访问:(https://appbqiqpzi66527.h5.xiaoeknow.com/homepage/10)或扫描二维码:


对我们的推文累计打赏超过1000元,我们即可给您开具发票,发票类别为“咨询费”。用心做事,不负您的支持!

往期推文推荐




Python爬虫——获取NASA卫星数据

基于情感词典的文本情感分析——以携程网景点评论为例

fre命令——展示变量的频率分布

Chatgpt|GPT在文本分析中的应用:一个基于Stata的集成命令用法介绍

数量经济技术经济研究|GPT在文本分析中的应用:一个基于Stata的集成命令用法介绍

变量的不同观测值个数统计——distinct和vardistinct

品诗雅谈的“诗词大会“——putdocx指令的使用

Stata答疑——专利个数知多少

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的数据处理和分析技巧。

投稿邮箱:statatraining@163.com投稿要求:1)必须原创,禁止抄袭;2)必须准确,详细,有例子,有截图;注意事项:1)所有投稿都会经过本公众号运营团队成员的审核,审核通过才可录用,一经录用,会在该推文里为作者署名,并有赏金分成。
2)邮件请注明投稿,邮件名称为“投稿+推文名称”。3)应广大读者要求,现开通有偿问答服务,如果大家遇到有关数据处理、分析等问题,可以在公众号中提出,只需支付少量赏金,我们会在后期的推文里给予解答。

【声明】内容源于网络
0
0
Stata and Python数据分析
爬虫俱乐部,新的启航
内容 1337
粉丝 0
Stata and Python数据分析 爬虫俱乐部,新的启航
总阅读78
粉丝0
内容1.3k