中文字幕在线观看,亚洲а∨天堂久久精品9966,亚洲成a人片在线观看你懂的,亚洲av成人片无码网站,亚洲国产精品无码久久久五月天

盤點(diǎn)用于數(shù)據(jù)科學(xué)的三大頂級Python庫(附代碼)

2018-10-11    來源:raincent

容器云強(qiáng)勢上線!快速搭建集群,上萬Linux鏡像隨意使用

Python在許多方面有著強(qiáng)大的吸引力 - 例如效率、代碼可讀性和速度方面,也正因?yàn)槿绱耍瑢τ谙M嵘龖?yīng)用程序功能的數(shù)據(jù)科學(xué)家和機(jī)器學(xué)習(xí)專家來說,Python通常是首選編程語言。(例如,Andrey Bulezyuk使用Python編程語言創(chuàng)建了一個(gè)很牛逼的機(jī)器學(xué)習(xí)應(yīng)用程序。)

由于其廣泛的用途,Python擁有大量的庫,使數(shù)據(jù)科學(xué)家可以更輕松地完成復(fù)雜的任務(wù),而無需面對很多編程麻煩。以下是最受數(shù)據(jù)科學(xué)青睞的3個(gè)頂級的Python庫,如果你正需要,那就試試吧。

1. NumPy

NumPy(Numerical Python的縮寫)是頂級的庫之一,它配備了大量有用的資源來幫助數(shù)據(jù)科學(xué)家將Python變成強(qiáng)大的科學(xué)分析和建模工具。這個(gè)流行的開源庫可以在BSD許可下使用。它是在科學(xué)計(jì)算中執(zhí)行任務(wù)的基礎(chǔ)Python庫。NumPy是一個(gè)更大的基于python的開源工具生態(tài)系統(tǒng)SciPy的一部分。

這個(gè)庫為Python提供了大量的數(shù)據(jù)結(jié)構(gòu),可以輕松地執(zhí)行多維數(shù)組和矩陣計(jì)算。除了用于求解線性代數(shù)方程和其他數(shù)學(xué)計(jì)算之外,NumPy還被用作不同類型通用數(shù)據(jù)的通用多維容器。

此外,它能夠完美集成其他編程語言,如C/ c++和Fortran。NumPy庫的多功能性使它能夠輕松快速地與各種數(shù)據(jù)庫和工具相結(jié)合。例如,讓我們看看如何使用NumPy(縮寫為np)來相乘兩個(gè)矩陣。

從導(dǎo)入庫開始(對于這些示例,我們將使用Jupyter筆記本)。

import numpy as np

接下來,讓我們使用eye()函數(shù)生成具有規(guī)定維數(shù)的單位矩陣:

matrix_one = np.eye(3)
matrix_one

輸出結(jié)果如下:

array([[1., 0., 0.],
[0., 1., 0.],
[0., 0., 1.]])

讓我們生成另一個(gè)3x3矩陣。

我們將使用arange([起始號碼]、[停止號碼])函數(shù)來排列數(shù)字。注意,函數(shù)中的第一個(gè)參數(shù)是要列出的初始數(shù)字,最后一個(gè)數(shù)字不包含在生成的結(jié)果中

此外,reshape()函數(shù)用于將原始生成的矩陣的維數(shù)修改為所需的維數(shù)。為了使矩陣“可乘”,它們應(yīng)該具有相同的維度。

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

輸出如下:

array([[1, 2, 3],
[4, 5, 6],
[7, 8, 9]])

讓我們使用dot()函數(shù)乘以兩個(gè)矩陣:

matrix_multiply = np.dot(matrix_one, matrix_two)
matrix_multiply

輸出如下:

array([[1., 2., 3.],
[4., 5., 6.],
[7., 8., 9.]])

接著,我們設(shè)法在不使用vanilla Python的情況下將兩個(gè)矩陣相乘。以下是此示例的完整代碼:

import numpy as np
#generating a 3 by 3 identity matrix
matrix_one = np.eye(3)
matrix_one
#generating another 3 by 3 matrix for multiplication
matrix_two = np.arange(1,10).reshape(3,3)
matrix_two
#multiplying the two arrays
matrix_multiply = np.dot(matrix_one, matrix_two)
matrix_multiply

 

2. Pandas

panda是另一個(gè)可以提高您的Python數(shù)據(jù)科學(xué)技能的大型庫。就像NumPy一樣,它屬于SciPy開源軟件家族,并且可以在BSD自由軟件許可下使用。

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

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

Series:單維陣列
DataFrame:具有異構(gòu)類型列的二維
Panel:三維,大小可變數(shù)組

例如,讓我們看看Panda Python庫(縮寫為pd)如何用于執(zhí)行一些描述性統(tǒng)計(jì)計(jì)算。從導(dǎo)入庫開始:

import pandas as pd

先創(chuàng)建一個(gè)系列字典:

d = {'Name':pd.Series(['Alfrick','Michael','Wendy','Paul','Dusan','George','Andreas',
'Irene','Sagar','Simon','James','Rose']),
'Years of Experience':pd.Series([5,9,1,4,3,4,7,9,6,8,3,1]),
'Programming Language':pd.Series(['Python','JavaScript','PHP','C++','Java','Scala','React','Ruby','Angular','PHP','Python','JavaScript'])
}

 

再創(chuàng)建一個(gè)DataFrame。

df = pd.DataFrame(d)

輸出表如下:

下面是這個(gè)示例的全部代碼:

import pandas as pd
#creating a dictionary of series
d = {'Name':pd.Series(['Alfrick','Michael','Wendy','Paul','Dusan','George','Andreas',
'Irene','Sagar','Simon','James','Rose']),
'Years of Experience':pd.Series([5,9,1,4,3,4,7,9,6,8,3,1]),
'Programming Language':pd.Series(['Python','JavaScript','PHP','C++','Java','Scala','React','Ruby','Angular','PHP','Python','JavaScript'])
}

#Create a DataFrame
df = pd.DataFrame(d)
print(df)

 

3. Matplotlib

Matplotlib也是SciPy核心軟件包的一部分,遵循BSD許可協(xié)議。它是一個(gè)流行的Python科學(xué)庫,用于生成簡單而強(qiáng)大的可視化。風(fēng)格類似 Matlab 的基于Python的圖表繪圖系統(tǒng),它提供了一整套和 matlab 相似的命令 API,十分適合交互式地進(jìn)行制圖。而且也可以方便地將它作為繪圖控件,嵌入 GUI 應(yīng)用程序中。

下面,讓我們體會一下Matplotlib庫是如何創(chuàng)建簡單的條形圖,從導(dǎo)入庫開始:

from matplotlib import pyplot as plt

接著,生成x軸和y軸的值:

x = [2, 4, 6, 8, 10]
y = [10, 11, 6, 7, 4]

接著調(diào)用繪制條形圖的功能

plt.bar(x,y)
plt.show()

生成的條形圖如下:

 

 

以下是此示例的完整代碼:

#importing Matplotlib Python library
from matplotlib import pyplot as plt
#same as import matplotlib.pyplot as plt

#generating values for x-axis
x = [2, 4, 6, 8, 10]

#generating vaues for y-axis
y = [10, 11, 6, 7, 4]

#calling function for plotting the bar chart
plt.bar(x,y)

#showing the plot
plt.show()

 

Python編程語言在數(shù)據(jù)處理和準(zhǔn)備方面一直做得很好,但在復(fù)雜的科學(xué)數(shù)據(jù)分析和建模方面做得就不那么好了。用于數(shù)據(jù)科學(xué)的頂級Python框架有助于填補(bǔ)這一空白,它允許用戶執(zhí)行復(fù)雜的數(shù)學(xué)計(jì)算并創(chuàng)建對數(shù)據(jù)有意義的復(fù)雜模型。

標(biāo)簽: 代碼 數(shù)據(jù)分析 數(shù)據(jù)庫

版權(quán)申明:本站文章部分自網(wǎng)絡(luò),如有侵權(quán),請聯(lián)系:west999com@outlook.com
特別注意:本站所有轉(zhuǎn)載文章言論不代表本站觀點(diǎn)!
本站所提供的圖片等素材,版權(quán)歸原作者所有,如需使用,請與原作者聯(lián)系。

上一篇:如果是個(gè)窮光蛋:如何從零開始學(xué)習(xí)成為一個(gè)數(shù)據(jù)科學(xué)家?

下一篇:一份程序員必備的開源面試圖譜!