小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

3 個用于數(shù)據(jù)科學(xué)的頂級 Python 庫

 KyunraWang 2018-10-07

英文:Dr. Michael J. Garbade,翻譯:Linux中國/Lv Feng

linux.cn/article-10080-1.html


Python 的許多特性,比如開發(fā)效率、代碼可讀性、速度等使之成為了數(shù)據(jù)科學(xué)愛好者的首選編程語言。對于想要升級應(yīng)用程序功能的數(shù)據(jù)科學(xué)家和機(jī)器學(xué)習(xí)專家來說,Python 通常是最好的選擇(比如,Andrey Bulezyuk 使用 Python 語言創(chuàng)造了一個優(yōu)秀的機(jī)器學(xué)習(xí)應(yīng)用程序)。


由于 Python 的廣泛使用,因此它擁有大量的庫,使得數(shù)據(jù)科學(xué)家能夠很容易地完成復(fù)雜的任務(wù),而且不會遇到許多編碼困難。下面列出 3 個用于數(shù)據(jù)科學(xué)的頂級 Python 庫。如果你想在數(shù)據(jù)科學(xué)這一領(lǐng)域開始你的職業(yè)生涯,就去了解一下它們吧。


NumPy


NumPy(數(shù)值 Python 的簡稱)是其中一個頂級數(shù)據(jù)科學(xué)庫,它擁有許多有用的資源,從而幫助數(shù)據(jù)科學(xué)家把 Python 變成一個強(qiáng)大的科學(xué)分析和建模工具。NumPy 是在 BSD 許可證的許可下開源的,它是在科學(xué)計算中執(zhí)行任務(wù)的基礎(chǔ) Python 庫。SciPy 是一個更大的基于 Python 生態(tài)系統(tǒng)的開源工具,而 NumPy 是 SciPy 非常重要的一部分。


NumPy 為 Python 提供了大量數(shù)據(jù)結(jié)構(gòu),從而能夠輕松地執(zhí)行多維數(shù)組和矩陣運(yùn)算。除了用于求解線性代數(shù)方程和其它數(shù)學(xué)計算之外,NumPy 還可以用做不同類型通用數(shù)據(jù)的多維容器。


此外,NumPy 還可以和其他編程語言無縫集成,比如 C/C++ 和 Fortran。NumPy 的多功能性使得它可以簡單而快速地與大量數(shù)據(jù)庫和工具結(jié)合。比如,讓我們來看一下如何使用 NumPy(縮寫成 np)來實現(xiàn)兩個矩陣的乘法運(yùn)算。


我們首先導(dǎo)入 NumPy 庫(在這些例子中,我將使用 Jupyter notebook):


import numpy as np


接下來,使用 eye() 函數(shù)來生成指定維數(shù)的單位矩陣:


matrix_one = np.eye(3)

matrix_one


輸出如下:



讓我們生成另一個 3×3 矩陣。


我們使用 arange([starting number], [stopping number]) 函數(shù)來排列數(shù)字。注意,函數(shù)中的第一個參數(shù)是需要列出的初始數(shù)字,而后一個數(shù)字不包含在生成的結(jié)果中。


另外,使用 reshape() 函數(shù)把原始生成的矩陣的維度改成我們需要的維度。為了使兩個矩陣“可乘”,它們需要有相同的維度。


matrix_two = np.arange(1,10).reshape(3,3)

matrix_two


輸出如下:



接下來,使用 dot() 函數(shù)將兩個矩陣相乘。


matrix_multiply = np.dot(matrix_one, matrix_two)

matrix_multiply


相乘后的輸出如下:



太好了!


我們成功使用 NumPy 完成了兩個矩陣的相乘,而不是使用普通冗長vanilla的 Python 代碼。


下面是這個例子的完整代碼:


import numpy as np

#生成一個 3x3 單位矩陣

matrix_one = np.eye(3)

matrix_one

#生成另一個 3x3 矩陣以用來做乘法運(yùn)算

matrix_two = np.arange(1,10).reshape(3,3)

matrix_two

#將兩個矩陣相乘

matrix_multiply = np.dot(matrix_one, matrix_two)

matrix_multiply


Pandas


Pandas 是另一個可以提高你的 Python 數(shù)據(jù)科學(xué)技能的優(yōu)秀庫。就和 NumPy 一樣,它屬于 SciPy 開源軟件家族,可以在 BSD 自由許可證許可下使用。


Pandas 提供了多能而強(qiáng)大的工具,用于管理數(shù)據(jù)結(jié)構(gòu)和執(zhí)行大量數(shù)據(jù)分析。該庫能夠很好的處理不完整、非結(jié)構(gòu)化和無序的真實世界數(shù)據(jù),并且提供了用于整形、聚合、分析和可視化數(shù)據(jù)集的工具


Pandas 中有三種類型的數(shù)據(jù)結(jié)構(gòu):


  • Series:一維、相同數(shù)據(jù)類型的數(shù)組

  • DataFrame:二維異型矩陣

  • Panel:三維大小可變數(shù)組


例如,我們來看一下如何使用 Panda 庫(縮寫成 pd)來執(zhí)行一些描述性統(tǒng)計計算。

首先導(dǎo)入該庫:


import pandas as pd


然后,創(chuàng)建一個序列series字典:



接下來,再創(chuàng)建一個數(shù)據(jù)框DataFrame:


df = pd.DataFrame(d)


輸出是一個非常規(guī)整的表:



下面是這個例子的完整代碼:



Matplotlib


Matplotlib 也是 Scipy 核心包的一部分,并且在 BSD 許可證下可用。它是一個非常流行的科學(xué)庫,用于實現(xiàn)簡單而強(qiáng)大的可視化。你可以使用這個 Python 數(shù)據(jù)科學(xué)框架來生成曲線圖、柱狀圖、直方圖以及各種不同形狀的圖表,并且不用擔(dān)心需要寫很多行的代碼。例如,我們來看一下如何使用 Matplotlib 庫來生成一個簡單的柱狀圖。


首先導(dǎo)入該庫:


from matplotlib import pyplot as plt


然后生成 x 軸和 y 軸的數(shù)值:


x = [2, 4, 6, 8, 10]

y = [10, 11, 6, 7, 4]


接下來,調(diào)用函數(shù)來繪制柱狀圖:


plt.bar(x,y)


最后,顯示圖表:


plt.show()


柱狀圖如下:



下面是這個例子的完整代碼:


#導(dǎo)入 Matplotlib 庫

from matplotlib import pyplot as plt

#和 import matplotlib.pyplot as plt 一樣

 

#生成 x 軸的數(shù)值

x = [2, 4, 6, 8, 10]

 

#生成 y 軸的數(shù)值

y = [10, 11, 6, 7, 4]

 

#調(diào)用函數(shù)來繪制柱狀圖

plt.bar(x,y)

 

#顯示圖表

plt.show()


總結(jié)


Python 編程語言非常擅長數(shù)據(jù)處理和準(zhǔn)備,但是在科學(xué)數(shù)據(jù)分析和建模方面就沒有那么優(yōu)秀了。幸好有這些用于數(shù)據(jù)科學(xué)的頂級 Python 框架填補(bǔ)了這一空缺,從而你能夠進(jìn)行復(fù)雜的數(shù)學(xué)計算以及創(chuàng)建復(fù)雜模型,進(jìn)而讓數(shù)據(jù)變得更有意義。


你還知道其它的 Python 數(shù)據(jù)挖掘庫嗎?你的使用經(jīng)驗是什么樣的?請在下面的評論中和我們分享。



【關(guān)于投稿】


如果大家有原創(chuàng)好文投稿,請直接給公號發(fā)送留言。


① 留言格式:
【投稿】+《 文章標(biāo)題》+ 文章鏈接

② 示例:
【投稿】
《不要自稱是程序員,我十多年的 IT 職場總結(jié)》:http://blog./94148/


③ 最后請附上您的個人簡介哈~



看完本文有收獲?請轉(zhuǎn)發(fā)分享給更多人

關(guān)注「數(shù)據(jù)分析與開發(fā)」,提升數(shù)據(jù)技能

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多