亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

python?dowhy數(shù)據估計因果分析功能探索

 更新時間:2024年02月01日 10:55:05   作者:小寒聊python  
這篇文章主要為大家介紹了python?dowhy數(shù)據估計因果分析功能實例探索,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪

python dowhy數(shù)據分析庫

今天給大家分享一個神奇的 python 庫,dowhy

https://github.com/py-why/dowhy 

dowhy 是一個開源的 Python 庫,旨在簡化因果推斷的過程,特別是針對那些希望從數(shù)據中估計因果效應的研究者和數(shù)據科學家。通過它可以輕松地定義因果模型、識別因果效應、估計這些效應以及進行健壯性檢驗。它建立在 Pandas、NumPy 和 scikit-learn 等流行庫之上,提供了一個直觀且強大的工具,用于根據觀測數(shù)據估計因果效應。

什么是因果分析?

因果分析是統(tǒng)計分析的一個分支,旨在理解和量化變量之間的因果關系。它的目的是回答諸如 “改變一個變量對另一個變量有什么影響?” 之類的問題?;?“哪些因素影響特定結果?” 與僅僅識別變量之間關系的相關性不同,因果分析試圖確定一個變量是否直接影響另一個變量

從本質上講,因果分析不僅僅是描述關聯(lián)性,還致力于在變量之間建立因果關系。這在流行病學、經濟學、社會科學和醫(yī)療保健等領域至關重要。

庫的安裝

可以直接通過 pip 進行安裝。

pip install dowhy

加載數(shù)據集

import numpy as np
import pandas as pd
from dowhy import CausalModel
import dowhy.datasets
rvar = 1 if np.random.uniform() >0.5 else 0 
data_dict = dowhy.datasets.xy_dataset(10000, effect=rvar, sd_error=0.2) 
df = data_dict['df']
df[["Treatment", "Outcome", "w0"]].head()

建立因果模型

現(xiàn)在你可以使用 DoWhy 定義因果模型。這涉及指定分析中的變量、治療、結果和潛在的混雜因素。

model= CausalModel(
        data=df,
        treatment=data_dict["treatment_name"],
        outcome=data_dict["outcome_name"],
        common_causes=data_dict["common_causes_names"]
        )
model.view_model(layout="dot")

CausalModel 是 DoWhy 庫中用于定義因果模型的核心類。這個類的構造函數(shù)接受幾個關鍵參數(shù)來指定模型的不同部分。

data,包含所有相關數(shù)據的 DataFrame。這應該包括處理變量、結果變量、共同原因(共變量)、以及(如果有的話)工具變量。

treatment,指定作為處理(干預)的變量名。在因果推斷中,我們關心的是改變這個變量會如何影響結果變量。

outcome,指定結果變量的名稱。這是我們想要了解其因果效應的變量。

common_causes,一個包含所有已知共同原因(也稱為共變量或混雜變量)名稱的列表。這些是既影響處理變量又影響結果變量的變量,必須控制以避免偏差。

instruments,一個包含所有工具變量名稱的列表(如果有的話)。工具變量是與處理變量相關但只通過它影響結果變量的變量,常用于處理內生性問題。

從圖中可以看出,w0 為混雜變量,它既影響處理變量 treatment 又影響結果變量 outcome。

估計因果效應

現(xiàn)在我們可以估計因果效應并確定估計是否正確。為簡單起見,此示例使用線性回歸。

estimate = model.estimate_effect(model.identify_effect(),
        method_name="backdoor.linear_regression")
# Plot Slope of line between treamtent and outcome =causal effect

這行代碼使用 DoWhy 庫來估計因果效應。

首先,model.identify_effect() 方法被調用來確定從觀測數(shù)據中是否可以識別出處理對結果的因果效應。這個識別過程通?;谥付ǖ囊蚬麍D,它會查看是否存在任何未控制的后門路徑。

然后,通過指定 method_name="backdoor.linear_regression",它使用線性回歸來估計效應,同時控制了所有通過識別過程發(fā)現(xiàn)的后門路徑的變量。這意味著它會估計在控制了所有已知的共同原因后,處理對結果的直接效應

下面,我們來繪制處理變量和結果變量之間的因果效應。在這個圖表中,斜率表示因果效應的大小,即處理變量的每個單位變化將導致結果變量變化多少單位。如果斜率為正,則意味著處理與結果之間存在正相關;如果斜率為負,則存在負相關。

dowhy.plotter.plot_causal_effect(estimate, df[data_dict["treatment_name"]], df[data_dict["outcome_name"]])

以上就是python dowhy數(shù)據估計因果分析功能探索的詳細內容,更多關于python dowhy數(shù)據分析的資料請關注腳本之家其它相關文章!

相關文章

  • Python自省及反射原理實例詳解

    Python自省及反射原理實例詳解

    這篇文章主要介紹了Python自省及反射原理實例詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-07-07
  • 創(chuàng)建Shapefile文件并寫入數(shù)據的例子

    創(chuàng)建Shapefile文件并寫入數(shù)據的例子

    今天小編就為大家分享一篇創(chuàng)建Shapefile文件并寫入數(shù)據的例子,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-11-11
  • Python 字符串中的字符倒轉

    Python 字符串中的字符倒轉

    實現(xiàn)字符倒轉的python函數(shù)
    2008-09-09
  • Python函數(shù)中參數(shù)是傳遞值還是引用詳解

    Python函數(shù)中參數(shù)是傳遞值還是引用詳解

    這篇文章主要介紹了深入了解Python函數(shù)中參數(shù)是傳值還是傳引用,在 C/C++ 中,傳值和傳引用是函數(shù)參數(shù)傳遞的兩種方式,在Python中參數(shù)是如何傳遞的,需要的朋友可以參考下
    2019-07-07
  • Python中強大的函數(shù)map?filter?reduce使用詳解

    Python中強大的函數(shù)map?filter?reduce使用詳解

    Python是一門功能豐富的編程語言,提供了許多內置函數(shù),以簡化各種編程任務,在Python中,map(),filter()和reduce()是一組非常有用的函數(shù),它們允許對可迭代對象進行操作,從而實現(xiàn)數(shù)據轉換、篩選和累積等操作,本文將詳細介紹這三個函數(shù),包括它們的基本用法和示例代碼
    2023-11-11
  • 在Python中使用mechanize模塊模擬瀏覽器功能

    在Python中使用mechanize模塊模擬瀏覽器功能

    這篇文章主要介紹了在Python中使用mechanize模塊模擬瀏覽器功能,包括使用cookie和設置代理等功能的實現(xiàn),需要的朋友可以參考下
    2015-05-05
  • 11行Python代碼實現(xiàn)解密摩斯密碼

    11行Python代碼實現(xiàn)解密摩斯密碼

    摩爾斯電碼是一種時通時斷的信號代碼,通過不同的排列順序來表達不同的英文字母、數(shù)字和標點符號。本文將通過Python代碼來實現(xiàn)解密摩斯密碼,感興趣的可以學習一下
    2022-04-04
  • 如何將Python代碼轉化為可執(zhí)行的程序

    如何將Python代碼轉化為可執(zhí)行的程序

    在Python中,將代碼轉成可以執(zhí)行的程序需要安裝庫pyinstaller,如果是Windows用戶,打開Anaconda?Prompt輸入相對應代碼,下面小編給大家詳細講解如何將Python代碼轉化為可執(zhí)行的程序,感興趣的朋友一起看看吧
    2024-03-03
  • Python?中的lambda匿名函數(shù)和三元運算符

    Python?中的lambda匿名函數(shù)和三元運算符

    這篇文章主要介紹了Python?中的lambda匿名函數(shù)和三元運算符,使用關鍵字???lambda???定義,所以匿名函數(shù)又稱之為lambda表達式,下面文章更多相關內容需要的小伙伴可以參考一下
    2022-04-04
  • OpenCV特征提取與檢測之Shi-Tomasi角點檢測器

    OpenCV特征提取與檢測之Shi-Tomasi角點檢測器

    在角點檢測的世界里哈瑞斯無疑是最重要的方法之一,但Shi-Tomasi作為改進的算法也有很大應用場景,尤其是動態(tài)跟蹤用的還比較多,這篇文章主要給大家介紹了關于OpenCV特征提取與檢測之Shi-Tomasi角點檢測器的相關資料,需要的朋友可以參考下
    2021-08-08

最新評論