偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

Python中三個(gè)不常見(jiàn)但是非常有用的數(shù)據(jù)科學(xué)庫(kù)

開(kāi)發(fā) 后端 大數(shù)據(jù)
如果你從事數(shù)據(jù)科學(xué)研究有一段時(shí)間了,那么pandas, scikit-learn seaborn和matplotlib這些庫(kù)你都應(yīng)該非常的熟悉。

 介紹

如果你從事數(shù)據(jù)科學(xué)研究有一段時(shí)間了,那么pandas, scikit-learn seaborn和matplotlib這些庫(kù)你都應(yīng)該非常的熟悉。

[[418006]]

如果您想要擴(kuò)展您的視野,學(xué)習(xí)一些更少見(jiàn)但同樣有用的庫(kù)。在本文中,我將向您展示一些不太為人所知的但是卻非常好用的python庫(kù)。

imbalanced-learn

如果你過(guò)去一直在構(gòu)建一些有監(jiān)督的機(jī)器學(xué)習(xí)模型,你就會(huì)知道目標(biāo)變量中的類別不平衡可能是一個(gè)大問(wèn)題。這是因?yàn)樵谏贁?shù)類中沒(méi)有足夠的例子來(lái)讓算法學(xué)習(xí)模式。

一個(gè)解決方案是創(chuàng)建一些合成樣本,通過(guò)使用例如SMOTE(合成少數(shù)群體過(guò)采樣技術(shù))來(lái)增加少數(shù)群體類的學(xué)習(xí)。

幸運(yùn)的是,imbalance-learn庫(kù)將幫助您在任何不平衡數(shù)據(jù)集上實(shí)現(xiàn)這一技術(shù)。

您可以通過(guò)在終端上執(zhí)行以下命令來(lái)安裝imbalance-learn庫(kù)。 

  1. pip install imbalanced-learn 

為了演示如何平衡數(shù)據(jù)集,我們將使用sklearn下載乳腺癌數(shù)據(jù)集。 

  1. from sklearn.datasets import load_breast_cancer 
  2. import pandas as pddata = load_breast_cancer() 
  3. df = pd.DataFrame(data.data, columns=[data.feature_names]) 
  4. df[‘target’] = data[‘target’] 
  5. df.head() 

 python中三個(gè)不常見(jiàn)但是非常有用的數(shù)據(jù)科學(xué)庫(kù)

 下面看目標(biāo)變量的分布。 

  1. df.target.value_counts()  
python中三個(gè)不常見(jiàn)但是非常有用的數(shù)據(jù)科學(xué)庫(kù)

數(shù)據(jù)集確實(shí)是均勻分布的,盡管它不是非常不平衡:我們有357名乳腺癌患者和212名健康患者。

我們看看能不能讓它更平衡一點(diǎn)。我們將使用SMOTE對(duì)0類進(jìn)行過(guò)采樣。 

  1. from imblearn.over_sampling import SMOTE 
  2. oversample = SMOTE() 
  3. X_oversample, y_oversample = oversample.fit_resample(data.data, data.target) 
  4. pd.Series(y_oversample).value_counts() 

如你所見(jiàn),數(shù)據(jù)集現(xiàn)在已經(jīng)完全平衡了。每個(gè)類有357個(gè)實(shí)例。作為我們操作的結(jié)果,創(chuàng)建了145個(gè)人工實(shí)例。

statsmodels

這是另一個(gè)很棒的庫(kù),專門用來(lái)建立統(tǒng)計(jì)模型。我通常用它來(lái)擬合線性回歸

它真的很容易使用,你可以馬上得到很多關(guān)于模型的信息,比如R2 BIC、AIC、置信度和它們相應(yīng)的p值。當(dāng)使用scikit-learn的線性回歸時(shí),這些信息更難以獲取。

讓我們看看如何使用這個(gè)庫(kù)來(lái)適應(yīng)線性回歸模型。讓我們先下載一個(gè)波士頓房?jī)r(jià)數(shù)據(jù)集。 

  1. from sklearn.datasets import load_boston 
  2. import pandas as pd 
  3. data = load_boston() 
  4. df = pd.DataFrame(data.data, columns=[data.feature_names]) 
  5. df[‘target’] = data[‘target’] 
  6. df.head()  
python中三個(gè)不常見(jiàn)但是非常有用的數(shù)據(jù)科學(xué)庫(kù)

上面是我們的數(shù)據(jù)集的前五行。有13個(gè)特征,我們可以看到一個(gè)目標(biāo)變量是一個(gè)連續(xù)的數(shù)字。這是一個(gè)完美的回歸數(shù)據(jù)集。

現(xiàn)在讓我們使用pip安裝統(tǒng)計(jì)模型庫(kù) 

  1. pip install statsmodels 

現(xiàn)在,我們可以使用以下代碼嘗試將線性回歸模型與我們的數(shù)據(jù)相匹配。 

  1. import statsmodels.api as sm 
  2. X = sm.add_constant(df.drop(columns=[‘target’])) # adding a constant 
  3. model = sm.OLS(df.target, X).fit() 
  4. predictions = model.predict(X) 
  5. print_model = model.summary() 
  6. print(print_model)   
python中三個(gè)不常見(jiàn)但是非常有用的數(shù)據(jù)科學(xué)庫(kù)

我們剛剛將一個(gè)線性回歸模型擬合到這個(gè)數(shù)據(jù)集上,并打印出了該模型的詳細(xì)摘要。您可以很容易地閱讀所有重要信息,在必要時(shí)重新調(diào)整功能,并重新運(yùn)行模型。

我發(fā)現(xiàn)與scikit-learn版本相比,使用statsmodels進(jìn)行回歸更容易,因?yàn)槲倚枰乃行畔⒍荚谶@個(gè)簡(jiǎn)短的報(bào)告中。

missingno

missingno是另一個(gè)有用的庫(kù)。它可以幫助您可視化缺失值的分布。

您可能已經(jīng)習(xí)慣使用isnull()函數(shù)檢查pandas中的缺失值。這可以幫助您獲取每列缺失值的數(shù)量,但不能幫助您確定它們的位置。這正是missingo變得有用的時(shí)候。

你可以使用下面的命令安裝庫(kù): 

  1. pip install missingno 

現(xiàn)在,讓我們演示如何使用missingo來(lái)可視化缺失的數(shù)據(jù)。為了做到這一點(diǎn),我們將從Kaggle下載預(yù)期壽命數(shù)據(jù)集。

然后可以使用read_csv()函數(shù)加載數(shù)據(jù)集,然后從missingno庫(kù)調(diào)用matrix()函數(shù)。 

  1. import pandas as pd 
  2. import missingno as msno 
  3. df = pd.read_csv(‘Life Expectancy Data.csv’) 
  4. msno.matrix(df) 
python中三個(gè)不常見(jiàn)但是非常有用的數(shù)據(jù)科學(xué)庫(kù)

可以看到缺失值的位置。如果懷疑丟失的值位于某個(gè)特定位置或遵循某個(gè)特定模式,那么它將非常有用。

總結(jié)

以上三個(gè)庫(kù)非常的有用,通過(guò)使用它們可以簡(jiǎn)化我們的操作,提高我們的工作效率。

 

責(zé)任編輯:華軒 來(lái)源: 今日頭條
相關(guān)推薦

2021-10-21 22:03:00

PythonNumpy函數(shù)

2010-07-30 09:07:12

PHP函數(shù)

2011-07-05 11:24:52

SQL語(yǔ)句索引

2009-03-24 14:23:59

PHP類庫(kù)PHP開(kāi)發(fā)PHP

2020-10-29 10:00:55

Python函數(shù)文件

2021-07-06 11:25:20

Chrome前端代碼

2025-02-26 11:05:03

2021-10-30 18:59:15

Python

2017-08-02 13:32:18

編程Java程序片段

2011-07-07 17:16:43

PHP

2023-02-19 15:22:22

React技巧

2012-04-17 09:44:08

JavaScript

2022-06-27 19:01:04

Python應(yīng)用程序數(shù)據(jù)

2019-10-18 09:25:45

Python蘋果公司算法

2012-05-25 14:20:08

JavaScript

2016-12-14 19:19:19

Linuxgcc命令行

2016-12-14 20:53:04

Linuxgcc命令行

2022-09-02 23:08:04

JavaScript技巧開(kāi)發(fā)

2020-08-27 10:10:46

NodeJs 軟件Express

2023-06-13 15:15:02

JavaScript前端編程語(yǔ)言
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)