👇 连享会 · 推文导航 | www.lianxh.cn
🍓 课程推荐:2024 政策优化和机制分析专题
主讲老师:杨海生 (中山大学)
课程时间:2024 年 8 月 8-10 日 (三天)
授课地点:西安 · 西北工业大学 (线下授课)
本期课程为大家提供了一些进行政策评价的新视角和新工具。我们不再满足于验证政策是否有效,还可以分析政策的作用机制、政策公平性和政策的可迁移性等,以便让政策分析更有弹性和深度。核心内容如下:
- 逐步检验法 | 双重纠偏 Lasso | 敏感性分析
- 因果路径分析 | 连续型中介变量 | 多重中介检验
作者:张春雷(东北财经大学)
邮箱:hzhchl@126.com
温馨提示: 文中链接在微信中无法生效。请点击底部「阅读原文」。或直接长按/扫描如下二维码,直达原文:
目录
1. 引言
2. 新的思路和方法
3. 总结
4. 参考资料
1. 引言
在进行数据处理的过程中,使用 import excel
命令导入 Excel 文档方便且高效。但 Stata 在导入体积超过 40MB 的 Excel 文档时会报错并提示文档过大。
以 CSMAR 上市公司数据库董监高个人特征数据为例,原始 Excel 文档高达 180MB ,Stata 无法直接导入。对于该问题,网络上已有相关讨论,连享会《 Stata 数据处理:超大 Excel 文档如何读入》总结了四种处理该问题的方法并列出了优缺点。
除此之外,也可以在下载阶段就将大型数据分为若干文档以满足 Stata 导入要求。
方法 | 优点 | 缺点 |
---|
1. excelxlsxlargefile 命令 | 数据规整,不易出错 | 速度慢,占用内存高 |
2. 转化为 .csv 格式 | 直观简单 | 转换慢, 易出现乱码 |
3. 转化为 .txt 格式 | 直观简单 | 转换慢,易出现乱码 |
4. 直接复制粘贴 | 非常直观 | 数据损失,剪切板占用内存高,电脑易死机 |
2. 新的思路和方法
python 在数据处理方面效率非常高,使用 Stata + python 联合将大大提高数据读入导出的效率。该方法的突出优点是内存占用低,效率高。
Stata16 以上版本加入了 python 接口,因此只需在 Stata 命令框输入以下代码就能完成从读入到导出的全部过程。注意:请确保您的电脑已经正确安装并配置了 python 环境,可参见如下推文:(在 Stata 命令窗口中输入 lianxh Python
可以查看所有相关推文)
- Stata-Python交互-10:Stata17 新特性之PyStata的配置与应用
- Stata-Python交互-9:将python数据导入Stata
- Stata-Python交互-8:将Stata数据导入Python
- Stata-Python交互-7:在Stata中实现机器学习-支持向量机
- Stata-Python交互-6:调用APIs和JSON数据
- Stata-Python交互-5:边际效应三维立体图示
- Stata-Python交互-4:如何调用Python宏包
- Stata-Python交互-3:如何安装Python宏包
- Stata-Python交互-2:在Stata中调用Python的三种方式
- Stata-Python交互-1:二者配合的基本设定
- Stata交互:Python-与-Stata-对比
在 stata 命令框中逐行输入以下代码:
python
import os
os.chdir(r"E:/资料/国泰安/董监高个人特征")
import pandas as pd
df = pd.read_excel("董监高个人特征.xlsx")
print(df.head())
df[df.columns.tolist()] = df[df.columns.tolist()].astype(str)
df.to_stata(r"E:/资料/国泰安/董监高个人特征/董监高个人特征.dta",write_index=True,version=119)
end
代码解读:
import os
os.chdir(r"E:/资料/国泰安/董监高个人特征")
import pandas as pd
df = pd.read_excel("董监高个人特征.xlsx")
- 导入pandas数据处理模块并读取 Excel 文档
print(df.head())
df[df.columns.tolist()] = df[df.columns.tolist()].astype(str)
- 将所有列都转换为字符串格式(否则导出过程容易报错)
df.to_stata(r"E:/资料/国泰安/董监高个人特征/董监高个人特征.dta",write_index=True,version=119)
以上代码运行过程中,读取共花费 12 分钟,耗费内存 1.8GB ,输出 Stata 格式文件耗时 2 分30 秒,导出后的 .dta 文件大小为 1.7GB。
另:经测试,在 IDLE( python 自带的集成开发环境)中,上述代码的运行时间更短,执行效率更高。
3. 总结
使用 Stata+python 不仅能满足导入大型 Excel 文档的要求,而且上述方法具有准确性高,占用内存小,效率高等特点,即使配置较差的电脑,也能使用该方法导入大型 Excel 文档。
4. 参考资料
- 王舒瑶,连享会推文,Stata数据处理:超大Excel文档如何读入
- Stata-Python交互-9:将python数据导入Stata
- Stata-Python交互-8:将Stata数据导入Python
- Stata数据处理:FRED数据导入问题的解决方案
🍓 课程推荐:2024 政策优化和机制分析专题
主讲老师:杨海生 (中山大学)
课程时间:2024 年 8 月 8-10 日 (三天)
授课地点:西安 · 西北工业大学 (线下授课)
New! Stata 搜索神器:lianxh
和 songbl
GIF 动图介绍
搜: 推文、数据分享、期刊论文、重现代码 ……
👉 安装:
. ssc install lianxh
. ssc install songbl
👉 使用:
. lianxh DID 倍分法
. songbl all
🍏 关于我们
- 直通车: 👉【百度一下: 连享会】即可直达连享会主页。亦可进一步添加 「知乎」,「b 站」,「面板数据」,「公开课」 等关键词细化搜索。