我知道,如果您想学习统计学,很多人都会争论。您应该使用R语言而不是<em>Python</em>。但是,我想提供一种使用<em>Python</em>软件包的替代方法,因为许多人都是通过学习<em>Python</em>语言开始其数据科学之旅的。在本文中
2021-05-17 07:00:06
我知道統計資料很難,但是,藉助現代技術,可以從頭開始學習統計資訊。使用程式語言中的所有這些已開發的統計資訊包,學習統計資訊變得比以前更加容易。
我知道,如果您想學習統計學,很多人都會爭論。您應該使用R語言而不是Python。但是,我想提供一種使用Python軟體包的替代方法,因為許多人都是通過學習Python語言開始其資料科學之旅的。
在本文中,將展示3個學習Statistic的頂級Python包。
1. Scipy.Stats
SciPy(發音為「 Sigh Pie」)是一種開源軟體包計算工具,用於在Python環境中執行科學方法。 Scipy本身也是許多數學,工程和資料研究中使用的數值演算法和特定領域工具箱的集合。
Scipy中可用的API之一是稱為Stats的統計API。根據Scipy主頁,Scipy.Stats是一個模組,其中包含大量的概率分佈和不斷增長的統計函數庫,尤其是用於概率函數研究的統計函數庫。
在Scipy.Stats模組上,可以參考許多統計功能API以便進一步學習。它們是:
連續分佈
多元分佈
離散分佈
摘要統計
頻率統計
關聯函數
統計檢驗
轉變
統計距離
隨機變數生成
迴圈統計功能
列聯表功能
繪圖測試
遮蔽統計功能
單變數和多變數核心密度估計
如果您正在使用Anaconda發行版中的Python,則Scipy軟體包已內建在環境中。如果選擇獨立安裝Scipy,則需要安裝依賴包。您可以通過執行下面的這一行來通過pip做到這一點。
python -m pip install --user numpy scipy matplotlib ipython jupyter pandas sympy nose
讓我們嘗試學習有關概率分佈的最簡單概念,即正態分佈。首先,我們將必要的程式包匯入到環境中。
#Import statistical package from Scipy
from scipy import stats#Import the normal distribution class
from scipy.stats import norm
我們匯入的範數類將成為概率函數,以產生遵循正態分佈的隨機變數。要獲取有關該類的更多資訊,我們可以嘗試列印文件。
print(stats.norm.__doc__)
2. Pingouin
Pingouin是一個開源統計軟體包,主要用於統計。該軟體包為您提供了許多類和函數,以學習基本統計資訊和假設檢驗。根據開發人員的說法,Pingouin是為需要簡單但詳盡的統計功能的使用者設計的。
Pingouin很簡單但很詳盡,因為該軟體包為您提供了有關資料的更多解釋。在Scipy.Stats上,當我們有時需要有關資料的更多解釋時,它們僅返回T值和p值。
在Pingouin程式包中,計算已按照上面的幾個步驟進行。例如,Pingouin的t檢驗不僅返回T值和p值,還返回自由度,效應大小(Cohen d),均值差的95%置信區間,統計功效以及測試的BF10。
目前,Pingouin軟體包提供了可用於統計測試的API函數。它們是:
· ANOVA and T-test
· Bayesian
· Circular
· Contingency
· Correlation and regression
· Distribution
· Effect sizes
· Multiple comparisons and post-hoc tests
· Multivariate tests
· Non-parametric
· Others
· Plotting
· Power analysis
· Reliability and consistency
Pingouin API文件本身對於學習目的是很豐富的。例如,讓我們探索方差分析功能。首先,您需要安裝Pingouin軟體包。
pip install pingouin
安裝僅需一秒鐘。之後,我們將使用mpg資料集示例對Pingouin進行ANOVA統計假設檢驗。#Import necessary package
import seaborn as sns
import pingouin as pgmpg = sns.load_dataset('mpg')
pg.anova(data = mpg, dv = 'mpg', between = 'origin')
3.Statsmodels
Statsmodels是一個統計模型python軟體包,它提供許多類和函數來創建統計估計。 Statsmodel包曾經是Scipy模組的一部分,但是目前,statsmodel包是單獨開發的。
Scipy.Stats和statsmodel有什麼區別? Scipy.Stats模組專注於統計定理,例如概率函數和分佈,而statsmodel包專注於基於資料的統計估計。
Statsmodel提供了統計建模中經常使用的API。 Statsmodel軟體包將API分為3個主要模型:
statsmodels.api,其中提供了許多橫截面模型和方法,包括迴歸和GLM。
statsmodels.tsa.api提供時間序列模型和方法。
statsmodels.formula.api提供了一個使用公式字元串和DataFrames指定模型的介面-簡單來說,您可以創建自己的模型。
讓我們嘗試使用Statsmodel包來學習OLS(普通最小二乘)建模。如果您沒有使用Anaconda發行版中的Python或尚未安裝Statsmodel軟體包,則可以使用以下程式碼行。
pip install statsmodels
繼續執行這些步驟,讓我們通過匯入包和資料集來開發模型。
#Importing the necessary package
from sklearn.datasets import load_boston
import statsmodels.api as sm
from statsmodels.api import OLS#import the data
boston = load_boston()
data = pd.DataFrame(data = boston['data'], columns = boston['feature_names'])
target = pd.Series(boston['target'])#Develop the model
sm_lm = OLS(target, sm.add_constant(data))
result = sm_lm.fit()
result.summary()
使用Statsmodel軟體包開發的OLS模型將具有您從模型估計中獲得的所有必要結果。
好了,本文到此結束。如果對程式設計、計算機、程式設計師方面感興趣的話,歡迎私信聯絡我,隨時交流!點個關注,是對我莫大的鼓勵!
相關文章
我知道,如果您想学习统计学,很多人都会争论。您应该使用R语言而不是<em>Python</em>。但是,我想提供一种使用<em>Python</em>软件包的替代方法,因为许多人都是通过学习<em>Python</em>语言开始其数据科学之旅的。在本文中
2021-05-17 07:00:06
整体来看,流畅线条塑造出时尚潮流的轮廓,非常适合日常旅游以及商务使用。容量不止于表面,虽说只有19L容量,但却具有多重空间分类存储,包括主袋、电脑袋、付袋等,主袋不仅可存放17寸以内任意笔记本电脑、<em>IPAD</em>手机、
2021-05-17 06:30:12
处理器:Intel Core I5-9400F 散热:背压RGB风冷 显卡:七彩虹 GTX 1050Ti 主板:七彩虹 B365M-D 内存:未知16G -2666MHz <em>SSD</em>:金士顿 A400 480G 电源:坦克 430 机箱:侧透加RGB *3 以上就是电脑的配置信息了,我们先不说硬
2021-05-17 04:30:55
这就是品牌价值。我觉得小米恰恰需要徕卡这个百年传奇品牌,来为它提升品牌影响力,现在就看小米能不能把握的住了,不过<em>安卓</em>OPPO沈义人的爆料,徕卡的下家多得是小米,希望小米能抓住机会吧。【声明】喜欢蜗牛记得收
2021-05-17 04:30:40
提到“越狱”两个词,真的还挺陌生,我是指在苹果设备上。不了解的朋友,越狱是可以通过iOS系统漏洞获取到最高权限的手段,这样手机系统就可以随你折腾,比如把iOS图标变成<em>安卓</em>图标。大概10-15年之前,还有很多人都在让
2021-05-17 04:30:22
据联发科方面透露的资料显示,天玑900所采用的台积电的6nm工艺,<em>CPU</em>部分的配置相对来说是比较高端,采用的是八核心设计,由2颗主频为2.4GHz的A78核心和6颗2.0GHz的A55核心构成。此外,<em>CPU</em>还采用了Mail-G68 M
2021-05-17 04:00:47