|
本文作者:田志凡 本文编辑:张语盈 技术总编:高金凤 如何用Stata读入Excel单表文件》介绍了如何将Excel单表读入Stata中,但当一个文件夹下有多个Excel单表时,如下:在“d:/excel读入”路径下有5个Excel单表,包含资产负债表、利润表、申万行业分类等,我们是不是重复多次读入单表的程序呢? 这一重复的手工劳动可用“循环”来代替。
解决思路:对该文件夹下的所有Excel文件的文件名进行循环,每循环一次,将一个Excel单表读入到Stata中,并保存为dta格式的文件。 那么,该如何获取Excel文件名呢?这里,我们可以使用两种方法:一是宏扩展函数,二是fs命令。 一、使用宏扩展函数,将Excel文件名放在局部宏中,然后进行循环,如下: 结果如下:每个Excel单表保存为一个dta格式的文件。
二、使用fs命令。 使用fs命令,可将文件名放在返回值r(files)中,使用方法与局部宏一样。(关于返回值的介绍可看往期推文《朝花夕拾|stata返回值》)。与宏扩展函数相比,这里,我们不用再定义宏,可以直接调用该返回值进行循环,如下: 使用return list可查看fs命令对应的返回值,如下:局部宏r(files)中存储了当前路径下的所有xls格式文件的文件名。
然后,调用返回值r(files)进行循环,如下: 结果同使用宏扩展函数。 注意,上述举例使用的Excel文件扩展名均为.xls,但Excel文件还有另一种扩展名为.xlsx,读入该文件时只需要把上述程序中对应.xls的部分修改为.xlsx即可! 这样,一个循环就将文件夹下的所有Excel单表分别读入到Stata中了,接下来读者就可以根据自己的需要,在Stata中进行数据合并、处理等操作了! 关于我们 微信公众号“爬虫俱乐部”分享实用的stata命令,欢迎转载、打赏。爬虫俱乐部是由李春涛教授领导下的研究生及本科生组成的大数据分析和数据挖掘团队。 投稿要求: 1)必须原创,禁止抄袭; 2)必须准确,详细,有例子,有截图; 注意事项: 1)所有投稿都会经过本公众号运营团队成员的审核,审核通过才可录用,一经录用,会在该推文里为作者署名,并有赏金分成。 2)邮件请注明投稿,邮件名称为“投稿+推文名称”。 3)应广大读者要求,现开通有偿问答服务,如果大家遇到关于stata分析数据的问题,可以在公众号中提出,只需支付少量赏金,我们会在后期的推文里给予解答。 |
¥5000000
¥1888000
¥5200000
¥5200000
¥3018300
¥2280000
¥3018300
¥3018300
¥6800000
¥6800000
¥5560000
¥5560000