Pandas中強(qiáng)大的數(shù)據(jù)可視化選項(xiàng)有哪些

這篇文章主要為大家展示了“Pandas中強(qiáng)大的數(shù)據(jù)可視化選項(xiàng)有哪些”,內(nèi)容簡(jiǎn)而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領(lǐng)大家一起研究并學(xué)習(xí)一下“Pandas中強(qiáng)大的數(shù)據(jù)可視化選項(xiàng)有哪些”這篇文章吧。

我們提供的服務(wù)有:網(wǎng)站建設(shè)、做網(wǎng)站、微信公眾號(hào)開發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認(rèn)證、韓城ssl等。為1000多家企事業(yè)單位解決了網(wǎng)站和推廣的問(wèn)題。提供周到的售前咨詢和貼心的售后服務(wù),是有科學(xué)管理、有技術(shù)的韓城網(wǎng)站制作公司

數(shù)據(jù)科學(xué)行業(yè)中一個(gè)最常見(jiàn)的陷阱是花費(fèi)數(shù)小時(shí)為他們的項(xiàng)目尋找最佳算法,而沒(méi)有花足夠的時(shí)間首先理解數(shù)據(jù)。

數(shù)據(jù)科學(xué)和機(jī)器學(xué)習(xí)項(xiàng)目的結(jié)構(gòu)化方法從項(xiàng)目目標(biāo)開始。同一組數(shù)據(jù)點(diǎn)可以推斷出一些有意義的信息?;谖覀兯鶎ふ业?,我們需要關(guān)注數(shù)據(jù)的另一個(gè)方面。一旦我們明確了目標(biāo),我們就應(yīng)該開始考慮我們需要的數(shù)據(jù)點(diǎn)。這將使我們能夠?qū)W⒂谧钕嚓P(guān)的信息集,而忽略可能不重要的數(shù)據(jù)集。

在現(xiàn)實(shí)生活中,從多個(gè)來(lái)源收集到的大多數(shù)時(shí)間數(shù)據(jù)都有空白值、打字錯(cuò)誤和其他異常。在進(jìn)行任何數(shù)據(jù)分析之前,清除數(shù)據(jù)是至關(guān)重要的。

在本文中,我將討論五個(gè)強(qiáng)大的數(shù)據(jù)可視化選項(xiàng),它們可以立即提供數(shù)據(jù)特征的感覺(jué)。即使在正式建?;蚣僭O(shè)測(cè)試任務(wù)之前,執(zhí)行EDA就可以傳達(dá)大量關(guān)于數(shù)據(jù)和特征之間關(guān)系的信息。

第1步-我們將導(dǎo)入pandas、matplotlib、seaborn和NumPy包,我們將使用這些包進(jìn)行分析。我們需要散點(diǎn)圖、自相關(guān)圖、滯后圖和平行圖。

import pandas as pd import numpy as np import matplotlib.pyplot as plt from pandas.plotting import autocorrelation_plot import seaborn as sns from pandas.plotting import scatter_matrix from pandas.plotting import autocorrelation_plot from pandas.plotting import parallel_coordinates from pandas.plotting import lag_plot

第2步-在Seaborn包中,有一個(gè)內(nèi)置的小數(shù)據(jù)集。我們將使用"mpg"、"tips"和"attention"數(shù)據(jù)進(jìn)行可視化。數(shù)據(jù)集是在seaborn中使用load_dataset方法加載的。

"""Download the datasets used in the program """ CarDatabase= sns.load_dataset("mpg") MealDatabase= sns.load_dataset("tips") AttentionDatabase= sns.load_dataset("attention")

六邊形分箱圖(hexpin)

我們經(jīng)常使用散點(diǎn)圖來(lái)快速掌握變量之間的關(guān)系。只要圖中沒(méi)有人口稠密的數(shù)據(jù)點(diǎn),獲得一個(gè)洞察力是非常有幫助的。在下面的代碼中,我們繪制了"mpg"數(shù)據(jù)集中"Horsepower"  和"Acceleration"數(shù)據(jù)點(diǎn)之間的散點(diǎn)圖。

plt.scatter(CarDatabase.acceleration ,CarDatabase.horsepower,marker="^")  plt.show()

散點(diǎn)圖中的點(diǎn)密集分布,從中獲取有意義的信息有點(diǎn)困難。

Pandas中強(qiáng)大的數(shù)據(jù)可視化選項(xiàng)有哪些

hexpins是解決重疊點(diǎn)散點(diǎn)圖的一個(gè)很好的替代方案。每個(gè)點(diǎn)不是在hexbin圖中單獨(dú)繪制的。在下面的代碼中,我們用相同的數(shù)據(jù)集在"Horsepower"  和"Acceleration"之間繪制一個(gè)hexbin。

CarDatabase.plot.hexbin(x='acceleration', y='horsepower', gridsize=10,cmap="YlGnBu")  plt.show()

在hexpin圖中可以清楚地推斷"Horsepower"  和"Acceleration"范圍集中值,變量之間呈負(fù)線性關(guān)系。六邊形的大小取決于"網(wǎng)格大小"參數(shù)。

Pandas中強(qiáng)大的數(shù)據(jù)可視化選項(xiàng)有哪些

熱力圖(Heatmaps)

熱力是我個(gè)人最喜歡查看不同變量之間的相關(guān)性。那些在媒體上跟蹤我的人可能已經(jīng)注意到我經(jīng)常使用它。在下面的代碼中,我們將計(jì)算seaborn"mpg"數(shù)據(jù)集中所有變量之間的成對(duì)相關(guān)性,并將其繪制為熱力圖。

熱力圖是我個(gè)人最喜歡查看不同變量之間的相關(guān)性。那些在媒體上跟蹤我的人可能已經(jīng)注意到我經(jīng)常使用它。在下面的代碼中,我們將計(jì)算seaborn"mpg"數(shù)據(jù)集中所有變量之間的成對(duì)相關(guān)性,并將其繪制為熱力圖。

sns.heatmap(CarDatabase.corr(), annot=True, cmap="YlGnBu")  plt.show()

我們可以看到"cylinders" 和 "horsepower"  是密切正相關(guān)的(正如在汽車中所預(yù)期的),而重量與加速度成反比。我們只需幾行代碼就可以快速理解所有不同變量之間的指示性關(guān)系。

Pandas中強(qiáng)大的數(shù)據(jù)可視化選項(xiàng)有哪些

自相關(guān)圖(Autocorrelation)

自相關(guān)圖是一個(gè)快速的試金石測(cè)試,以確定數(shù)據(jù)點(diǎn)是否隨機(jī)。如果數(shù)據(jù)點(diǎn)遵循某種趨勢(shì),那么一個(gè)或多個(gè)自相關(guān)將顯著非零。圖中的虛線顯示99%的置信區(qū)間。在下面的代碼中,我們正在檢查"tips"數(shù)據(jù)庫(kù)中的總帳單金額是否是隨機(jī)的。

autocorrelation_plot(MealDatabase.total_bill)  plt.show()

我們可以看到,自相關(guān)圖在所有時(shí)間滯后中都非常接近于零,這表明總的_bill數(shù)據(jù)點(diǎn)是隨機(jī)的。

Pandas中強(qiáng)大的數(shù)據(jù)可視化選項(xiàng)有哪些

當(dāng)我們按照特定順序繪制數(shù)據(jù)點(diǎn)的自相關(guān)圖時(shí),我們可以看到該圖顯著地非零。

data = pd.Series(np.arange(12,7000,16.3)) autocorrelation_plot(data)  plt.show()
Pandas中強(qiáng)大的數(shù)據(jù)可視化選項(xiàng)有哪些

滯后圖(Lag)

滯后圖也有助于驗(yàn)證數(shù)據(jù)集是隨機(jī)值集還是遵循某種趨勢(shì)。當(dāng)繪制"tips"數(shù)據(jù)集的"total_bills"值的滯后圖時(shí),就像在自相關(guān)圖中一樣,滯后圖表明它是隨機(jī)數(shù)據(jù),到處都有值。

lag_plot(MealDatabase.total_bill)  plt.show()
Pandas中強(qiáng)大的數(shù)據(jù)可視化選項(xiàng)有哪些

當(dāng)我們延遲繪制一個(gè)非隨機(jī)數(shù)據(jù)序列時(shí),如下面的代碼所示,我們得到了一條平滑的線條。

data = pd.Series(np.arange(-12*np.pi,300*np.pi,10))  lag_plot(data)  plt.show()
Pandas中強(qiáng)大的數(shù)據(jù)可視化選項(xiàng)有哪些

平行坐標(biāo)圖(Parallel coordinates)

把我們的大腦包圍起來(lái)并將其可視化不僅僅是三維數(shù)據(jù),這一直是一個(gè)挑戰(zhàn)。繪制高維數(shù)據(jù)集的平行坐標(biāo)非常有用。每個(gè)尺寸用一條垂直線表示。

在平行坐標(biāo)系中,"N"等距垂直線表示數(shù)據(jù)集的"N"維度。頂點(diǎn)在第n個(gè)軸上的位置對(duì)應(yīng)于該點(diǎn)的第n個(gè)坐標(biāo)。

讓我們考慮一個(gè)小樣本數(shù)據(jù),它有五個(gè)小部件和大尺寸小部件的五個(gè)特性。

Pandas中強(qiáng)大的數(shù)據(jù)可視化選項(xiàng)有哪些

垂直線表示小部件的每個(gè)功能。一系列連續(xù)的線段代表"小"和"大"小部件的特征值。

Pandas中強(qiáng)大的數(shù)據(jù)可視化選項(xiàng)有哪些

下面的代碼繪制了seaborn中"attention"數(shù)據(jù)集的平行坐標(biāo)。請(qǐng)注意,群集的點(diǎn)看起來(lái)更靠近。

parallel_coordinates(AttentionDatabase,"attention",color=('#556270', '#C7F464'))  plt.show()
Pandas中強(qiáng)大的數(shù)據(jù)可視化選項(xiàng)有哪些

以上是“Pandas中強(qiáng)大的數(shù)據(jù)可視化選項(xiàng)有哪些”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!

新聞名稱:Pandas中強(qiáng)大的數(shù)據(jù)可視化選項(xiàng)有哪些
當(dāng)前URL:http://bm7419.com/article36/gocssg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供定制網(wǎng)站、自適應(yīng)網(wǎng)站、關(guān)鍵詞優(yōu)化、App開發(fā)、網(wǎng)站改版、小程序開發(fā)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

成都定制網(wǎng)站建設(shè)