温馨提示: 定期 清理浏览器缓存,可以获得最佳浏览体验。
New!
lianxh
命令发布了:
随时搜索连享会推文、Stata 资源,安装命令如下:
. ssc install lianxh
使用详情参见帮助文件 (有惊喜):
. help lianxh
作者: 张子登 (中山大学)
邮箱: zhangzd5@mail2.sysu.edu.cn
致谢: 本文摘自以下文章,特此感谢!
Source: Chuck Huber, The Stata Blog: Stata/Python integration part 4: How to use Python packages -Link-
Stata/Python 交互系列推文 源自 Stata 公司的统计项目总监 Chuck Huber 博士发表于 Stata 官网的系列博文,一共 9 篇。较为系统地介绍了 Stata 与 Python 的交互方式,包括:如何配置你的软件、如何实现 Stata 与 Python 数据集互通、如何调用 Python 工具包、如何进行机器学习分析等。
中文编译稿列表如下:
目录
在上篇推文中,我们展示了如何运用 pip 安装四个受欢迎的 Python 软件包。 今天,我们将展示关于如何导入和使用 Python 软件包的基础知识,并学习一些重要的 Python 概念和术语。
在下面的示例中,我们将使用 pandas 包用以距离,但其理论和语法同样适用于其他 Python 软件包。
pandas 是一款流行的用于导入、导出和处理数据的 Python 软件包。该软件包包含了用于处理不同结构数据的不同模块,例如数组 (Series), 数据框 (DataFrame) 和面板数据 (Panels)。
首先,我们输入 python which pandas
来检查系统中是否已安装 pandas。
. python which pandas
<module 'pandas' from 'C:\\Users\\ChuckStata\\AppData\\Local\\Programs\\Python\\
> Python38\\lib\\site-packages\\pandas\\__init__.py'>
如果在结果中看不到该路径,则需按照之前推文中的说明安装 pandas 软件包。
接下来,我们可以通过在代码块开头键入 import pandas
告诉 Python 我们想要使用 pandas 包。这将从包中导入 pandas 模块。
python
import pandas
end
然后,我们可以使用 pandas.read_stata()
方法从 Stata Press 网站中将 Stata 的自带数据集读取到名为 “auto” 的 pandas 数据框中。
python
import pandas
auto = pandas.read_stata("http://www.stata-press.com/data/r16/auto.dta")
end
术语方法用以描述模块内的一个函数。例如, pandas 包中的 read_stata()
方法是用来读取 Stata 数据集并将其转换为 pandas 数据框的函数。
pandas模块包含许多方法,最终我们可能会厌倦在每种方法之前键入
pandas
。我们可以通过给模块名称起别名来避免键入冗长的模块名称,输入 import "模块名称" as "别名"
。
在下面的代码块中,我们输入了 import pandas as pd
,将别名 pd
命名给 pandas
。 现在,我可以通过键入 pd.read_stata()
而不是 pandas.read_stata()
来使用 read_stata()
方法。
python
import pandas as pd
auto = pd.read_stata("http://www.stata-press.com/data/r16/auto.dta")
end
模块是一种针对不同应用情况细分软件包功能的途径。 一个模块可以定义一组方法、类和变量。 我们可以在 Python 语句的模块中引用它们。 例如, DataFrame
类包含在 pandas 包中的 pandas.core.frame
模块中。
通常,我们仅引用包中的类并省略模块名称。 例如,下面代码块中的第四行使用 pandas 包中 DataFrame
类的 mean()
方法来估算 mpg 和 weight 的均值。
python
import pandas as pd
auto = pd.read_stata("http://www.stata-press.com/data/r16/auto.dta")
pd.DataFrame.mean(auto[['mpg','weight']])
end
上面的代码块输出以下结果:
. python
----------------------------------------------- python (type end to exit) ------
>>> import pandas as pd
>>> auto = pd.read_stata("http://www.stata-press.com/data/r16/auto.dta")
>>> pd.DataFrame.mean(auto[['mpg','weight']])
mpg 21.297297
weight 3019.459459
dtype: float64
>>> end
--------------------------------------------------------------------------------
您也可以从包中的模块直接导入类,并在使用类时省略掉模块名称或别名。
下面代码块的第三行从 pandas 包中导入 DataFrame
类 (请注意,大写很重要) 。 现在,您可以通过键入 DataFrame.mean()
而不是 pd.DataFrame.mean()
来使用 mean()
方法。
python
import pandas as pd
from pandas import DataFrame
auto = pd.read_stata("http://www.stata-press.com/data/r16/auto.dta")
DataFrame.mean(auto[['mpg','weight']])
end
您可能会厌倦键入 DataFrame.mean()
在每次估计平均值时。幸运的是,您可以通过键入 from "模块名称" import "类名" as "别名"
来为类分配别名。
在下面的代码块的第三行中,我们通过键入 from pandas import DataFrame as df
将别名 df
命名给 DataFrame
类。 现在,我可以通过键入 df.mean()
而不是 DataFrame.mean()
来使用 mean()
方法。
python
import pandas as pd
from pandas import DataFrame as df
auto = pd.read_stata("http://www.stata-press.com/data/r16/auto.dta")
df.mean(auto[['mpg','weight']])
end
我们用下图简单回顾所学到的概念和术语:
Python 软件包是模块的集合。 每个模块可以包含一组方法,类和变量。 例如, pandas 软件包包含了一系列用于导入、导出和管理数据的类和方法。
方法是一种可以接受参数并执行某些操作的函数。 方法可以是模块或类的一部分。
包中的方法通常划分在模块和类中。 包和类可以分别包含许多方法。 我们必须先导入模块或类,然后才能使用它们的方法。
您可以在 pandas 用户指南 中阅读有关 pandas 软件包的更多信息。
至此,我们已经奠定了所需的所有基础,并准备好进入更加有趣的部分! 在下一篇文章中,我们将向您展示如何使用 Stata 估计逻辑回归模型中的边际预测,以及如何使用 Python 绘制该预测的三维表面图。
Note:产生如下推文列表的命令为:
lianxh Stata Python +
安装最新版lianxh
命令:
ssc install lianxh, replace
连享会-直播课 上线了!
http://lianxh.duanshu.com
免费公开课:
直击面板数据模型 - 连玉君,时长:1小时40分钟,课程主页 Stata 33 讲 - 连玉君, 每讲 15 分钟. Stata 小白的取经之路 - 龙志能,时长:2 小时,课程主页 部分直播课 课程资料下载 (PPT,dofiles等)
支持回看
专题 | 嘉宾 | 直播/回看视频 |
---|---|---|
⭐ 最新专题 | 文本分析、机器学习、效率专题、生存分析等 | |
研究设计 | 连玉君 | 我的特斯拉-实证研究设计,-幻灯片- |
面板模型 | 连玉君 | 动态面板模型,-幻灯片- |
面板模型 | 连玉君 | 直击面板数据模型 [免费公开课,2小时] |
Note: 部分课程的资料,PPT 等可以前往 连享会-直播课 主页查看,下载。
关于我们
课程, 直播, 视频, 客服, 模型设定, 研究设计, stata, plus, 绘图, 编程, 面板, 论文重现, 可视化, RDD, DID, PSM, 合成控制法
等
连享会小程序:扫一扫,看推文,看视频……
扫码加入连享会微信群,提问交流更方便
✏ 连享会学习群-常见问题解答汇总:
✨ https://gitee.com/arlionn/WD
New!
lianxh
命令发布了:
随时搜索连享会推文、Stata 资源,安装命令如下:
. ssc install lianxh
使用详情参见帮助文件 (有惊喜):
. help lianxh