中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

有哪些數據工程必備的Python包

發布時間:2023-04-13 09:58:42 來源:億速云 閱讀:139 作者:iii 欄目:編程語言

這篇文章主要介紹“有哪些數據工程必備的Python包”的相關知識,小編通過實際案例向大家展示操作過程,操作方法簡單快捷,實用性強,希望這篇“有哪些數據工程必備的Python包”文章能幫助大家解決問題。

1、Knockknock

Knockknock是一個簡單的Python包,它會在機器學習模型訓練結束或崩潰時通知您。我們可以通過多種渠道獲得通知,如電子郵件、Slack、Microsoft Teams等。

為了安裝該包,我們使用以下代碼。

pip install knockknock

例如,我們可以使用以下代碼將機器學習建模訓練狀態通知到指定的電子郵件地址。

from knockknock import email_senderfrom sklearn.linear_model import LinearRegressionimport numpy as np@email_sender(recipient_emails=["", ""], sender_email="")def train_linear_model(your_nicest_parameters):x = np.array([[1, 1], [1, 2], [2, 2], [2, 3]])y = np.dot(x, np.array([1, 2])) + 3 regression = LinearRegression().fit(x, y)return regression.score(x, y)

這樣就可以在該函數出現問題或者完成時獲得通知。

2、tqdm

當需要進行迭代或循環時,如果你需要顯示進度條?那么tqdm就是你需要的。這個包將在你的筆記本或命令提示符中提供一個簡單的進度計。

讓我們從安裝包開始。

pip install tqdm

然后可以使用以下代碼來顯示循環過程中的進度條。

from tqdm import tqdmq = 0for i in tqdm(range(10000000)):q = i +1

有哪些數據工程必備的Python包

就像上面的gifg,它可以在notebook上顯示一個很好的進度條。當有一個復雜的迭代并且想要跟蹤進度時,它會非常有用。

3、Pandas-log

Panda -log可以對Panda的基本操作提供反饋,如.query、.drop、.merge等。它基于R的Tidyverse,可以使用它了解所有數據分析步驟。

安裝包

pip install pandas-log

安裝包之后,看看下面的示例。

import pandas as pdimport numpy as npimport pandas_logdf = pd.DataFrame({"name": ['Alfred', 'Batman', 'Catwoman'],"toy": [np.nan, 'Batmobile', 'Bullwhip'],"born": [pd.NaT, pd.Timestamp("1940-04-25"), pd.NaT]})

然后讓我們嘗試用下面的代碼做一個簡單的 pandas 操作記錄。

with pandas_log.enable():res = (df.drop("born", axis = 1).groupby('name'))

有哪些數據工程必備的Python包

通過 pandas-log,我們可以獲取所有的執行信息。

4、Emoji

顧名思義,Emoji 是一個支持 emoji 文本解析的 Python 包。 通常,我們很難用 Python 處理表情符號,但 Emoji 包可以幫助我們進行轉換。

使用以下代碼安裝 Emoji 包。

pip install emoji

看看下面代碼:

import emojiprint(emoji.emojize('Python is :thumbs_up:'))

有哪些數據工程必備的Python包

有了這個包,可以輕易的輸出表情符號。

5、TheFuzz

TheFuzz 使用 Levenshtein 距離來匹配文本以計算相似度。

pip install thefuzz

下面代碼介紹如何使用 TheFuzz 進行相似性文本匹配。

from thefuzz import fuzz, process#Testing the score between two sentencesfuzz.ratio("Test the word", "test the Word!")

有哪些數據工程必備的Python包

TheFuzz 還可以同時從多個單詞中提取相似度分數。

choices = ["Atlanta Falcons", "New York Jets", "New York Giants", "Dallas Cowboys"]process.extract("new york jets", choices, limit=2)

有哪些數據工程必備的Python包

TheFuzz 適用于任何文本數據相似性檢測,這個工作在nlp中非常重要。

6、Numerizer

Numerizer 可將寫入的數字文本轉換為對應的整數或浮點數。

pip install numerizer

然后 讓我們嘗試幾個輸入來進行轉換。

from numerizer import numerizenumerize('forty two')

有哪些數據工程必備的Python包

如果使用另一種書寫風格,它也可以工作的。

numerize('forty-two')

有哪些數據工程必備的Python包

numerize('nine and three quarters')

有哪些數據工程必備的Python包

如果輸入不是數字的表達式,那么將會保留:

numerize('maybe around nine and three quarters')

有哪些數據工程必備的Python包

7、PyAutoGUI

PyAutoGUI 可以自動控制鼠標和鍵盤。

pip install pyautogui

然后我們可以使用以下代碼測試。

import pyautoguipyautogui.moveTo(10, 15)pyautogui.click()pyautogui.doubleClick()pyautogui.press('enter')

上面的代碼會將鼠標移動到某個位置并單擊鼠標。 當需要重復操作(例如下載文件或收集數據)時,非常有用。

8、Weightedcalcs

Weightedcalcs 用于統計計算。 用法從簡單的統計數據(例如加權平均值、中位數和標準變化)到加權計數和分布等。

pip install weightedcalcs

使用可用數據計算加權分布。

import seaborn as snsdf = sns.load_dataset('mpg')import weightedcalcs as wccalc = wc.Calculator("mpg")

然后我們通過傳遞數據集并計算預期變量來進行加權計算。

calc.distribution(df, "origin")

有哪些數據工程必備的Python包

9、scikit-posthocs

scikit-posthocs 是一個用于“事后”測試分析的 python 包,通常用于統計分析中的成對比較。 該軟件包提供了簡單的類似 scikit-learn API 來進行分析。

pip install scikit-posthocs

然后讓我們從簡單的數據集開始,進行 ANOVA 測試。

import statsmodels.api as saimport statsmodels.formula.api as sfaimport scikit_posthocs as spdf = sa.datasets.get_rdataset('iris').datadf.columns = df.columns.str.replace('.', '')lm = sfa.ols('SepalWidth ~ C(Species)', data=df).fit()anova = sa.stats.anova_lm(lm)print(anova)

有哪些數據工程必備的Python包

獲得了 ANOVA 測試結果,但不確定哪個變量類對結果的影響最大,可以使用以下代碼進行原因的查看。

sp.posthoc_ttest(df, val_col='SepalWidth', group_col='Species', p_adjust='holm')

有哪些數據工程必備的Python包

使用 scikit-posthoc,我們簡化了事后測試的成對分析過程并獲得了 P 值

10、Cerberus

Cerberus 是一個用于數據驗證的輕量級 python 包。

pip install cerberus

Cerberus 的基本用法是驗證類的結構。

from cerberus import Validatorschema = {'name': {'type': 'string'}, 'gender':{'type': 'string'}, 'age':{'type':'integer'}}v = Validator(schema)

定義好需要驗證的結構后,可以對實例進行驗證。

document = {'name': 'john doe', 'gender':'male', 'age': 15}v.validate(document)

有哪些數據工程必備的Python包

如果匹配,則 Validator 類將輸出True 。 這樣我們可以確保數據結構是正確的。

11、ppscore

ppscore 用于計算與目標變量相關的變量的預測能力。 該包計算可以檢測兩個變量之間的線性或非線性關系的分數。 分數范圍從 0(無預測能力)到 1(完美預測能力)。

pip install ppscore

使用 ppscore 包根據目標計算分數。

import seaborn as snsimport ppscore as ppsdf = sns.load_dataset('mpg')pps.predictors(df, 'mpg')

有哪些數據工程必備的Python包

結果進行了排序。 排名越低變量對目標的預測能力越低。

12、Maya

Maya 用于盡可能輕松地解析 DateTime 數據。

pip install maya

然后我們可以使用以下代碼輕松獲得當前日期。

import mayanow = maya.now()print(now)

還可以為明天日期。

tomorrow = maya.when('tomorrow')tomorrow.datetime()

有哪些數據工程必備的Python包

13、Pendulum

Pendulum 是另一個涉及 DateTime 數據的 python 包。 它用于簡化任何 DateTime 分析過程。

pip install pendulum

我們可以對實踐進行任何的操作。

import pendulumnow = pendulum.now("Europe/Berlin")now.in_timezone("Asia/Tokyo")now.to_iso8601_string()now.add(days=2)

有哪些數據工程必備的Python包

14、category_encoders

category_encoders 是一個用于類別數據編碼(轉換為數值數據)的python包。 該包是各種編碼方法的集合,我們可以根據需要將其應用于各種分類數據。

pip install category_encoders

可以使用以下示例應用轉換。

from category_encoders import BinaryEncoderimport pandas as pdenc = BinaryEncoder(cols=['origin']).fit(df)numeric_dataset = enc.transform(df)numeric_dataset.head()

有哪些數據工程必備的Python包

15、scikit-multilearn

scikit-multilearn 可以用于特定于多類分類模型的機器學習模型。 該軟件包提供 API 用于訓練機器學習模型以預測具有兩個以上類別目標的數據集。

pip install scikit-multilearn

利用樣本數據集進行多標簽KNN來訓練分類器并度量性能指標。

from skmultilearn.dataset import load_datasetfrom skmultilearn.adapt import MLkNNimport sklearn.metrics as metricsX_train, y_train, feature_names, label_names = load_dataset('emotions', 'train')X_test, y_test, _, _ = load_dataset('emotions', 'test')classifier = MLkNN(k=3)prediction = classifier.fit(X_train, y_train).predict(X_test)metrics.hamming_loss(y_test, prediction)

有哪些數據工程必備的Python包

16、Multiset

Multiset類似于內置的set函數,但該包允許相同的字符多次出現。

pip install multiset

可以使用下面的代碼來使用 Multiset 函數。

from multiset import Multisetset1 = Multiset('aab')set1

有哪些數據工程必備的Python包

17、Jazzit

Jazzit 可以在我們的代碼出錯或等待代碼運行時播放音樂。

pip install jazzit

使用以下代碼在錯誤情況下嘗試示例音樂。

from jazzit import error_track@error_track("curb_your_enthusiasm.mp3", wait=5)def run():for num in reversed(range(10)):print(10/num)

這個包雖然沒什么用,但是它的功能是不是很有趣,哈

18、handcalcs

handcalcs 用于簡化notebook中的數學公式過程。 它將任何數學函數轉換為其方程形式。

pip install handcalcs

使用以下代碼來測試 handcalcs 包。 使用 %%render 魔術命令來渲染 Latex 。

import handcalcs.renderfrom math import sqrt
%%rendera = 4b = 6c = sqrt(3*a + b/7)

有哪些數據工程必備的Python包

19、NeatText

NeatText 可簡化文本清理和預處理過程。 它對任何 NLP 項目和文本機器學習項目數據都很有用。

pip install neattext

使用下面的代碼,生成測試數據

import neattext as nt mytext = "This is the word sample but ,our WEBSITE is https://exaempleeele.com ?."docx = nt.TextFrame(text=mytext)

TextFrame 用于啟動 NeatText 類然后可以使用各種函數來查看和清理數據。

docx.describe()

有哪些數據工程必備的Python包

使用 describe 函數,可以顯示每個文本統計信息。進一步清理數據,可以使用以下代碼。

docx.normalize()

有哪些數據工程必備的Python包

20、Combo

Combo 是一個用于機器學習模型和分數組合的 python 包。 該軟件包提供了一個工具箱,允許將各種機器學習模型訓練成一個模型。 也就是可以對模型進行整合。

pip install combo

使用來自 scikit-learn 的乳腺癌數據集和來自 scikit-learn 的各種分類模型來創建機器學習組合。

from sklearn.tree import DecisionTreeClassifierfrom sklearn.linear_model import LogisticRegressionfrom sklearn.ensemble import GradientBoostingClassifierfrom sklearn.ensemble import RandomForestClassifierfrom sklearn.neighbors import KNeighborsClassifierfrom sklearn.model_selection import train_test_splitfrom sklearn.datasets import load_breast_cancerfrom combo.models.classifier_stacking import Stackingfrom combo.utils.data import evaluate_print

接下來,看一下用于預測目標的單個分類器。

# Define data file and read X and yrandom_state = 42X, y = load_breast_cancer(return_X_y=True)X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.4,random_state=random_state)# initialize a group of clfsclassifiers = [DecisionTreeClassifier(random_state=random_state),LogisticRegression(random_state=random_state),KNeighborsClassifier(),RandomForestClassifier(random_state=random_state),GradientBoostingClassifier(random_state=random_state)]clf_names = ['DT', 'LR', 'KNN', 'RF', 'GBDT']for i, clf in enumerate(classifiers):clf.fit(X_train, y_train)y_test_predict = clf.predict(X_test)evaluate_print(clf_names[i] + ' | ', y_test, y_test_predict)print()

有哪些數據工程必備的Python包

使用 Combo 包的 Stacking 模型。

clf = Stacking(classifiers, n_folds=4, shuffle_data=False,keep_original=True, use_proba=False,random_state=random_state)clf.fit(X_train, y_train)y_test_predict = clf.predict(X_test)evaluate_print('Stacking | ', y_test, y_test_predict)

有哪些數據工程必備的Python包

21、PyAztro

你是否需要星座數據或只是對今天的運氣感到好奇? 可以使用 PyAztro 來獲得這些信息! 這個包有幸運數字、幸運標志、心情等等。 這是我們人工智能算命的基礎數據,哈

pip install pyaztro

使用以下代碼訪問今天的星座信息。

import pyaztropyaztro.Aztro(sign='gemini').description

有哪些數據工程必備的Python包

22、Faker

Faker 可用于簡化生成合成數據。 許多開發人員使用這個包來創建測試的數據。

pip install Faker

要使用 Faker 包生成合成數據

from faker import Fakerfake = Faker()

生成名字

fake.name()

有哪些數據工程必備的Python包

每次從 Faker 類獲取 .name 屬性時,Faker 都會隨機生成數據。

23、Fairlearn

Fairlearn 用于評估和減輕機器學習模型中的不公平性。 該軟件包提供了許多查看偏差所必需的 API。

pip install fairlearn

然后可以使用 Fairlearn 的數據集來查看模型中有多少偏差。

from fairlearn.metrics import MetricFrame, selection_ratefrom fairlearn.datasets import fetch_adultdata = fetch_adult(as_frame=True)X = data.datay_true = (data.target == '>50K') * 1sex = X['sex']selection_rates = MetricFrame(metrics=selection_rate,y_true=y_true,y_pred=y_true,sensitive_features=sex)fig = selection_rates.by_group.plot.bar(legend=False, rot=0,title='Fraction earning over $50,000')

有哪些數據工程必備的Python包

Fairlearn API 有一個 selection_rate 函數,可以使用它來檢測組模型預測之間的分數差異,以便我們可以看到結果的偏差。

24、tiobeindexpy

tiobeindexpy 用于獲取 TIOBE 索引數據。 TIOBE 指數是一個編程排名數據,對于開發人員來說是非常重要的因為我們不想錯過編程世界的下一件大事。

pip install tiobeindexpy

可以通過以下代碼獲得當月前 20 名的編程語言排名。

from tiobeindexpy import tiobeindexpy as tbdf = tb.top_20()

有哪些數據工程必備的Python包

25、pytrends

pytrends 可以使用 Google API 獲取關鍵字趨勢數據。如果想要了解當前的網絡趨勢或與我們的關鍵字相關的趨勢時,該軟件包非常有用。這個需要訪問google,所以你懂的。

pip install pytrends

假設我想知道與關鍵字“Present Gift”相關的當前趨勢,

from pytrends.request import TrendReqimport pandas as pdpytrend = TrendReq()keywords = pytrend.suggestions(keyword='Present Gift')df = pd.DataFrame(keywords)df

有哪些數據工程必備的Python包

該包將返回與關鍵字相關的前 5 個趨勢。

26、visions

visions 是一個用于語義數據分析的 python 包。 該包可以檢測數據類型并推斷列的數據應該是什么。

pip install visions

可以使用以下代碼檢測數據中的列數據類型。 這里使用 seaborn 的 Titanic 數據集。

import seaborn as snsfrom visions.functional import detect_type, infer_typefrom visions.typesets import CompleteSetdf = sns.load_dataset('titanic')typeset = CompleteSet()converting everything to stringsprint(detect_type(df, typeset))

有哪些數據工程必備的Python包

27、Schedule

Schedule 可以為任何代碼創建作業調度功能

pip install schedule

例如,我們想10 秒工作一次:

import scheduleimport timedef job():print("I'm working...")schedule.every(10).seconds.do(job)while True:schedule.run_pending()time.sleep(1)

有哪些數據工程必備的Python包

28、autocorrect

autocorrect 是一個用于文本拼寫更正的 python 包,可應用于多種語言。 用法很簡單,并且對數據清理過程非常有用。

pip install autocorrect

可以使用類似于以下代碼進行自動更正。

from autocorrect import Spellerspell = Speller()spell("I'm not sleaspy and tehre is no place I'm giong to.")

有哪些數據工程必備的Python包

29、funcy

funcy 包含用于日常數據分析使用的精美實用功能。 包中的功能太多了,我無法全部展示出來,有興趣的請查看他的文檔。

pip install funcy

這里只展示一個示例函數,用于從可迭代變量中選擇一個偶數,如下面的代碼所示。

from funcy import select, evenselect(even, {i for i in range (20)})

有哪些數據工程必備的Python包

30、IceCream

IceCream 可以使調試過程更容易。該軟件包在打印/記錄過程中提供了更詳細的輸出。

pip install icecream

可以使用下面代碼

from icecream import icdef some_function(i):i = 4 + (1 * 2)/ 10 return i + 35ic(some_function(121))

有哪些數據工程必備的Python包

也可以用作函數檢查器。

def foo():ic()if some_function(12):ic()else:ic()foo()

有哪些數據工程必備的Python包

打印的詳細程度非常適合分析。

關于“有哪些數據工程必備的Python包”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識,可以關注億速云行業資訊頻道,小編每天都會為大家更新不同的知識點。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

湖南省| 武安市| 民丰县| 图木舒克市| 洱源县| 石首市| 日喀则市| 温州市| 枣阳市| 通海县| 永安市| 新郑市| 祁阳县| 册亨县| 宜兰县| 平凉市| 英吉沙县| 延庆县| 罗平县| 安西县| 富顺县| 溆浦县| 富锦市| 江源县| 肃北| 壤塘县| 武夷山市| 营口市| 阆中市| 铜山县| 澄江县| 乐平市| 若尔盖县| 闽清县| 福泉市| 建宁县| 长武县| 太谷县| 万年县| 南丹县| 宣汉县|