Làm thế nào để bạn sử dụng mô hình thống kê trong python?

Làm thế nào để bạn sử dụng mô hình thống kê trong python?

Santiago Rodrigues Manica

Làm theo

28 Tháng ba, 2021

·

10 phút đọc

·

Chỉ dành cho thành viên

Hồi quy tuyến tính bằng StatsModels

Hồi quy tuyến tính trong Python cho các nhà dịch tễ học trong 6 bước

Làm thế nào để bạn sử dụng mô hình thống kê trong python?

Kiểm tra phiên bản Python trong Linux

Trong Linux, chúng tôi có một trình bao nơi chúng tôi nhập các lệnh được diễn giải và cho hệ điều hành biết những gì người dùng muốn

Các bước để kiểm tra phiên bản Python trong Linux là-

  • Khởi động hệ thống của bạn và chuyển sang hệ điều hành Linux (bạn có thể tìm thấy nó với tên Ubuntu)
  • Khi màn hình máy tính để bàn của Linux xuất hiện, nhấp vào 'Terminal' để mở nó
  • Trong cửa sổ đầu cuối, nhập python -version và nhấp vào 'Enter'

Trong dòng tiếp theo, nó sẽ hiển thị phiên bản hiện tại của python được cài đặt trong hệ thống của bạn

Cài đặt mô hình thống kê

Bây giờ chúng ta hãy thảo luận về các bước cài đặt mô hình thống kê trong hệ thống của chúng ta. Chúng ta sẽ xem xét hai phương pháp cài đặt

  1. Sử dụng Dấu nhắc Anaconda
  2. Sử dụng Dấu nhắc Lệnh

Trong phương pháp đầu tiên, chúng tôi sẽ mở Dấu nhắc Anaconda và nhập lệnh sau-

Trong phương pháp thứ hai, chúng tôi sẽ mở Dấu nhắc Lệnh, nhập lệnh sau và nhấp vào 'Enter'

Đã đến lúc tìm kiếm một chương trình trong đó chúng tôi sẽ nhập các mô hình thống kê-

Ở đây, chúng tôi sẽ thực hiện hồi quy OLS (Bình phương nhỏ nhất thông thường), trong kỹ thuật này, chúng tôi sẽ cố gắng giảm thiểu tổng bình phương ròng của sự khác biệt giữa giá trị được tính toán và giá trị quan sát được

Thí dụ -

Đầu ra-

Làm thế nào để bạn sử dụng mô hình thống kê trong python?

Trong hướng dẫn này, chúng tôi đã thảo luận về các bước liên quan đến việc cài đặt mô hình thống kê và cách chúng tôi có thể có được bản tóm tắt thống kê chi tiết về tập dữ liệu của mình với sự trợ giúp của nó

Chúng ta có thể khám phá dữ liệu, ước tính các mô hình thống kê khác nhau và thậm chí kiểm tra các mô hình theo thống kê bằng cách sử dụng gói mô hình thống kê có tên Python. Statsmodel là gói lập trình Python và thuộc nhóm mô-đun liên quan đến lĩnh vực khoa học và được triển khai trong các công nghệ tương lai, bao gồm phân tích dữ liệu, thống kê và khoa học dữ liệu. Nó có thể được coi là gói miễn phí cho mô-đun thống kê có tên SciPy

Gói phát triển phần mềm tất cả trong một(hơn 600 khóa học, hơn 50 dự án)

Làm thế nào để bạn sử dụng mô hình thống kê trong python?
Làm thế nào để bạn sử dụng mô hình thống kê trong python?
Làm thế nào để bạn sử dụng mô hình thống kê trong python?
Làm thế nào để bạn sử dụng mô hình thống kê trong python?

Làm thế nào để bạn sử dụng mô hình thống kê trong python?
Làm thế nào để bạn sử dụng mô hình thống kê trong python?
Làm thế nào để bạn sử dụng mô hình thống kê trong python?
Làm thế nào để bạn sử dụng mô hình thống kê trong python?

Giá bán
Xem các khóa học

Hơn 600 khóa học trực tuyến. hơn 50 dự án. Hơn 3000 giờ. Giấy chứng nhận có thể kiểm chứng. Truy cập trọn đời
4. 6 (85,882 xếp hạng)

Bài viết này sẽ xem xét tổng quan về mô hình thống kê, tại sao cần sử dụng Statsmodel, các bước cài đặt, cách sử dụng nó, mô hình thống kê hồi quy tuyến tính và xem cách triển khai nó với sự trợ giúp của một ví dụ

Bắt đầu khóa học phát triển phần mềm miễn phí của bạn

Phát triển web, ngôn ngữ lập trình, kiểm thử phần mềm và những thứ khác

Tổng quan về Statsmodels Python

Thư viện hoặc gói này được tạo bên trên các gói SciPy và NumPy, đồng thời xử lý dữ liệu bằng cách sử dụng gấu trúc và có giao diện dễ thương cho công thức giống như R-like. Matplotlib là thư viện mà các chức năng đồ họa được sử dụng. Nhiều gói Python khác coi đây là cơ sở để tạo thư viện thống kê

scipy. stats là mô-đun của gói scipy và ban đầu được viết bởi Jonathan Taylor, nhưng sau đó nó đã bị xóa và một gói hoàn toàn mới đã được tạo. Nhiều cải tiến, thử nghiệm nghiêm ngặt và chỉnh sửa đã được thực hiện trong Google Summer of Code 2009 và cuối cùng, gói với các mô hình thống kê đã được tung ra

Ngay cả bây giờ, nhiều mô hình thống kê, công cụ vẽ đồ thị và các mô hình mới đang nổi lên và được giới thiệu trên thị trường với sự phát triển liên tục của nhóm mô hình thống kê

Tại sao lại là StatMô hình?

Chúng tôi có thể làm việc với số liệu thống kê theo cách mà không nền tảng nào khác cho phép chúng tôi khi chính mô hình thống kê được tạo ra, luôn ghi nhớ mục đích của số liệu thống kê khó. Nó nghiêng về R nhiều hơn và là một công cụ hoàn hảo khi phân tích những thứ thống kê. Hầu hết các nhà phát triển lập trình trong R đều có thể sử dụng điều này và có thể dễ dàng chuyển sang Python bằng gói này

Cài đặt StatsModels

Chúng ta có thể cài đặt thư viện statsmodel bằng cách thực hiện một số lệnh nhất định. Chúng tôi phải đảm bảo rằng các điều kiện tiên quyết sau được đáp ứng -

  • Nặng nề 1. 6 gói hoặc phiên bản mới hơn
  • gấu trúc 0. 12 gói hoặc phiên bản mới hơn
  • Cython 0. 24 gói hoặc phiên bản mới hơn
  • 0. 2. 1 gói hoặc phiên bản mới hơn
  • scipy 0. Gói 11 hoặc phiên bản mới hơn
  • Trăn 2. 6 gói hoặc phiên bản mới hơn

Nếu bạn đã cài đặt tất cả các gói trên trên máy của mình, bạn có thể cài đặt mô hình thống kê bằng cách sử dụng các lệnh đầu cuối. Đối với điều này, hãy mở thiết bị đầu cuối và bằng cách sử dụng pip, bạn cần nhập lệnh sau trên thiết bị đầu cuối –

Sudo pip install statsmodel

Thực hiện lệnh trên sẽ cho đầu ra sau -

Làm thế nào để bạn sử dụng mô hình thống kê trong python?

Để thay thế cho cách trên, bạn có thể thử cài đặt statsmodel bằng cách sử dụng Conda và lệnh sẽ là –

Sudo conda install statsmodel

Việc thực thi lệnh trên thiết bị đầu cuối có thể dẫn đến kết quả sau -

Làm thế nào để bạn sử dụng mô hình thống kê trong python?

Gói statsmodel sẽ sẵn sàng để sử dụng sau khi bạn làm theo các bước cài đặt ở trên

Sử dụng StatModels

Khi mô hình thống kê được cài đặt, bạn có thể sử dụng gói mô hình thống kê bên trong chương trình Python của mình chỉ bằng cách nhập gói ở đầu tệp bằng cách sử dụng câu lệnh nhập bên dưới –

import statsmodel

Sau đó, bạn có thể sử dụng các chức năng và tính năng của statsmodel trong chương trình Python đó

Ví dụ về Statsmodels Python

Hãy để chúng tôi xem xét một ví dụ đơn giản để giúp bạn hiểu rõ hơn về việc sử dụng gói. Các bước chúng tôi sẽ làm theo sẽ là nhập các gói cần thiết, tải dữ liệu chúng tôi muốn sử dụng, tạo mô hình hồi quy và điều chỉnh nó. Trong ví dụ của chúng tôi, chúng tôi sẽ sử dụng một biến hồi quy có nhật ký tự nhiên là một. Bước cuối cùng sẽ liên quan đến việc kiểm tra các kết quả thu được. Chúng tôi sẽ viết đoạn mã sau của Python–

#importing the required packages
import numpy as np
import statsmodels.api as statsEducba
import statsmodels.formula.api as statsEducbaModel
#Providing the dataset for loading
sampleEducbaData= statsEducba.datasets.get_rdataset ("Educba", "Payal").data
#Fitting the model by using regression with the log of 1
sampleOutputRes = statsEducbaModel.ols('Lottery ~ Literacy + np.log(Pop1831)', data = sampleEducbaData).fit()
#showing the final summary of output containing analysis
print (sampleOutputRes.summary())

Đầu ra của việc thực thi đoạn mã trên như trong hình bên dưới –

Làm thế nào để bạn sử dụng mô hình thống kê trong python?

Thống kê hồi quy tuyến tínhMô hình

Sau khi bạn đã học những kiến ​​thức cơ bản về cách sử dụng mô hình thống kê, đã đến lúc chuyển sang phần phức tạp hơn, nơi chúng ta sẽ triển khai hồi quy tuyến tính trong dữ liệu nguồn với sự trợ giúp của gói mô hình thống kê. Chúng tôi sẽ làm theo các bước tương tự được đề cập trong ví dụ trên với một phần bổ sung cho mô hình OLS. Hãy để chúng tôi trực tiếp chuyển sang viết mã và sau đó cố gắng hiểu nó –

#importing the necessary packages
import numpy as educbaSampleNumpy
import stateducbaSampleStatsodels.api as educbaSampleStats
#Loading the source data set
educba_data = educbaSampleStats.datasets.spector.load()
#Adding constants to the data file
educba_data.exog = educbaSampleStats.add_constant(educba_data.exog, prepend=False)
#Fitting the model which is in OLS 
educbaModel = educbaSampleStats.OLS(educba_data.endog, educba_data.exog)
res = educbaModel.fit()
#Summarize the statistical results and printing the same on console 
print(res.summary())

Chúng ta có thể dễ dàng đọc chi tiết kết quả từ đầu ra. Việc thực thi mã trên cho đầu ra sau -

Làm thế nào để bạn sử dụng mô hình thống kê trong python?

Chúng ta hãy lấy thêm một ví dụ sẽ triển khai các mô hình tuyến tính tổng quát, còn được ký hiệu là GLM, với sự hỗ trợ của các họ hàm mũ với một tham số để ước lượng. Nó có thể được thực hiện đơn giản bằng cách quan sát ví dụ dưới đây –

#Importing required library of statsmodel
import statsmodels.api as educba_stat
#Loading the data 
educba_sample_data = educba_stat.datasets.scotland.load()
#Creating the data file along with addition of constants to it
educba_sample_data.exog = educba_stat.add_constant(educba_sample_data.exog)
#Using the link function provided by default try to initialize the gamma family model
educba_GAMA = educba_stat.GLM(educba_sample_data.endog, educba_sample_data.exog, family=educba_stat.families.Gamma())
#Fit the model
educba_gamma_results = educba_GAMA.fit()
#print the summary
print(educba_gamma_results.summary())

Đầu ra của đoạn mã trên như trong hình bên dưới –

Làm thế nào để bạn sử dụng mô hình thống kê trong python?

Phần kết luận

Chúng ta có thể sử dụng statsmodel để thực hiện phân tích thống kê và tạo các mô hình mới chỉ trong một vài dòng mã mà không gặp nhiều rắc rối, mang lại cho chúng ta kết quả tóm tắt rõ ràng và dễ hiểu

Bài viết được đề xuất

Đây là hướng dẫn về Statsmodels Python. Ở đây chúng tôi thảo luận tổng quan về mô hình thống kê, tại sao cần sử dụng mô hình thống kê, các bước cài đặt và mô hình thống kê hồi quy tuyến tính. Bạn cũng có thể xem các bài viết sau để tìm hiểu thêm –

Mô hình thống kê Python có tốt không?

Nó cũng có cú pháp gần với R hơn nhiều, vì vậy, đối với những người đang chuyển đổi sang Python, StatsModels là một lựa chọn tốt . Như mong đợi đối với một cái gì đó đến từ thế giới thống kê, cần nhấn mạnh vào việc hiểu các biến có liên quan và kích thước hiệu ứng, so với việc chỉ tìm mô hình phù hợp nhất.

Sự khác biệt giữa mô hình thống kê và hồi quy tuyến tính Sklearn là gì?

Scikit-learning về cơ bản được thiết kế cho máy học, trong khi Statsmodels được tạo cho các số liệu thống kê nghiêm ngặt . Scikit-learning cung cấp nhiều mô hình hơn để chuẩn hóa, trong khi Statsmodels giúp sửa các giả định OLS bị hỏng. Có một nhược điểm lớn nhất với Statsmodels là nó là một gói mới được phát triển.

Sklearn có nhanh hơn mô hình thống kê không?

Mặc dù scikit-learning nhanh hơn một chút so với mô hình thống kê cho 1.000 quan sát trở xuống , sự khác biệt này không đáng kể theo phân tích kiểm tra t. Sci-kit learn nhanh hơn đáng kể đối với các bộ dữ liệu có hơn 1.000 quan sát.

hồi quy tuyến tính statsmodels là gì?

Mô hình thống kê hồi quy tuyến tính là mô hình giúp chúng ta dự đoán và được sử dụng để điều chỉnh kịch bản trong đó một tham số phụ thuộc trực tiếp vào tham số kia. Here, we have one variable that is dependent and the other one which is independent.