社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  Python

DDML:双重机器学习(Stata中Python相关设置)

数量经济学 • 4 月前 • 612 次点击  


设置 Stata 的 Python 集成

pystacked至少需要 Stata 16(或更高版本)、Python 安装(3.8 或更高版本)和 scikit-learn(0.24 或更高版本)。如果要使用ddml,则还应安装 Python。

StataCorp 在三个博客条目中提供了有关如何设置 Stata 的 Python 集成的详细说明:链接 1、链接 2、链接 3。

下面,我们简要概述了这些步骤。

1. Python 安装#

您(至少)有三个选择:

  1. 对于许多人来说,最简单的方法是安装 Anaconda,它可在此处获得。Anaconda 是一个 Python 发行版,带有最重要的包、包管理器和编辑器。

  2. 或者,您可以从此处下载并安装 Python

  3. 如果您的系统上已经安装了最新的 Python 版本,则可以为 Stata 设置一个单独的 Python 环境。这是可选的,但如果您想在不同的项目中使用不同的库,这可能很有用(请参阅此处的说明)。

2. 设置 Python 集成#

一旦你安装了 Python,你需要告诉 Stata 在哪里可以找到 Python 安装。

您可以使用以下方法在系统上搜索 Python 安装

python search

请注意,可能会显示多个 Python 安装(例如,MacOS 附带旧的 Python 版本),并且 Stata 并不总是在您的系统上找到所有 Python 安装。

要将 Stata 链接到特定的 Python 安装,请使用:

python set exec  , permanently 

例如,where 可能是 /usr/local/bin/python3C:\Program Files\Python38\python.exe``C:\Users\\AppData\Local\Programs\Python\Python38\python.exe ,具体取决于您的操作系统和安装 Python 的位置。

键入python query以检查安装是否已正确链接:

.  python query
------------------------------------------------------------------ 
    Python Settings
      set python_exec      /usr/bin/python3
      set python_userpath  

    Python system information
      initialized          no
      version              3.8.9
      architecture         64-bit

您只需Stata 键入python 即可启动 Java,然后end返回到 Stata 环境 用:

. python
----------------------------------------------- python (type end to exit) ----------
>>> print('hello')
hello
>>> end
------------------------------------------------------------------------------------

3. 管理软件包

pystacked需要 scikit-learn(缩写)。您可以从 Stata 中检查是否已安装:sklearnsklearn

. python which sklearn
'sklearn' from '/Users//Library/Python/3.8/lib/python/site-packages/sklearn/__init__.py'>

如果 Stata 没有找到 sklearn,这是因为您已将 Stata 链接到错误的 Python 安装,或者因为您仍然需要安装sklearn 。

如果您使用 Anaconda,则会自动包含,您可以通过 Anaconda Python 发行版(请参阅此处)或在终端中使用sklearn conda install来更新 scikit-learn。

如果不使用 Anaconda,则可以使用 安装和更新包。例如,您可以通过在终端中输入内容进行安装,也可以直接进行安装 在 Stata 中:pipsklearn-m pip install -U scikit-learn


shell  -m pip install -U scikit-learn

其中,请参阅您要与 Stata 一起使用的 Python 安装。如果您只想使用默认的 Python 安装,您也可以替换为(在 Mac 上)或(在 Win 上)。

4、检查它是否有效#

要测试 Stata 的 Python 集成是否适用于您的系统,请在 Stata 中运行以下测试代码:


clear all 
use http://www.stata-press.com/data/r16/iris

python:
from sfi import Data
import numpy as np
from sklearn.svm import SVC

# Use the sfi Data class to pull data from Stata variables into Python
X = np.array(Data.get("seplen sepwid petlen petwid"))
y = np.array(Data.get("iris"))

# Use the data to train C-Support Vector Classifier
svc_clf = SVC(gamma='auto')
svc_clf.fit(X, y)
end

要测试pystacked是否适用于您的系统,请在 Stata 中运行以下测试代码:


clear all
use https://statalasso.github.io/dta/cal_housing.dta, clear
set seed 42
gen train=runiform()
replace train=train<.75>set seed 42
pystacked medh longi-medi if train 

可选:在 Python 环境中使用 Stata#

您还可以在 Python 环境中使用 Stata。如果您想在系统上使用多个版本的 Python,这可能很有用。



Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/175760
 
612 次点击