欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

pandas探索你的數(shù)據(jù)實現(xiàn)可視化示例詳解

 更新時間:2023年10月11日 11:17:41   作者:海貍大大  
這篇文章主要為大家介紹了pandas探索你的數(shù)據(jù)實現(xiàn)可視化示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪

探索泰坦尼克災(zāi)難數(shù)據(jù)

在數(shù)據(jù)分析的旅程中,可視化數(shù)據(jù)是一個不可或缺的步驟,它可以幫助我們更好地理解數(shù)據(jù)、發(fā)現(xiàn)趨勢和關(guān)聯(lián)。在本篇博客中,我們將使用 Python 中的 pandas、matplotlib 和 seaborn 庫,來探索泰坦尼克災(zāi)難的數(shù)據(jù)集,以圖表形式呈現(xiàn)數(shù)據(jù)的各種方面。

步驟1 導(dǎo)入必要的庫

首先,我們導(dǎo)入了一些必要的庫,包括 pandas 用于數(shù)據(jù)操作,matplotlib 和 seaborn 用于數(shù)據(jù)可視化,以及 numpy 用于數(shù)值計算。這些庫將在整個分析過程中發(fā)揮關(guān)鍵作用。

# 運行以下代碼
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
import numpy as np
%matplotlib inline

步驟2 從以下地址導(dǎo)入數(shù)據(jù)

在這一步,我們準(zhǔn)備導(dǎo)入泰坦尼克災(zāi)難的數(shù)據(jù),這些數(shù)據(jù)存儲在名為 "train.csv" 的文件中。數(shù)據(jù)導(dǎo)入是數(shù)據(jù)分析的第一步,讓我們能夠開始探索和分析數(shù)據(jù)。

# 運行以下代碼
path7 = 'exercise_data/train.csv'  # train.csv

步驟3 將數(shù)據(jù)框命名為titanic

我們成功導(dǎo)入數(shù)據(jù)后,將數(shù)據(jù)框命名為 "titanic" 并顯示前幾行數(shù)據(jù),以便查看數(shù)據(jù)的結(jié)構(gòu)和內(nèi)容。

# 運行以下代碼
titanic = pd.read_csv(path7)
titanic.head()

步驟4 將PassengerId設(shè)置為索引

在這一步,我們將 "PassengerId" 列設(shè)置為數(shù)據(jù)的索引。這可以幫助我們更容易地訪問和操作數(shù)據(jù)。

# 運行以下代碼
titanic.set_index('PassengerId').head()

步驟5 繪制一個展示男女乘客比例的扇形圖

通過創(chuàng)建扇形圖,我們展示了乘客中男性和女性的比例。這是一個簡單而有效的方式來可視化性別分布,并了解男女乘客的比例。

# 運行以下代碼
# sum the instances of males and females
males = (titanic['Sex'] == 'male').sum()
females = (titanic['Sex'] == 'female').sum()
# put them into a list called proportions
proportions = [males, females]
# Create a pie chart
plt.pie(
    # using proportions
    proportions,
    # with the labels being officer names
    labels = ['Males', 'Females'],
    # with no shadows
    shadow = False,
    # with colors
    colors = ['blue','red'],
    # with one slide exploded out
    explode = (0.15 , 0),
    # with the start angle at 90%
    startangle = 90,
    # with the percent listed as a fraction
    autopct = '%1.1f%%'
    )
# View the plot drop above
plt.axis('equal')
# Set labels
plt.title("Sex Proportion")
# View the plot
plt.tight_layout()
plt.show()

步驟6 繪制一個展示船票Fare, 與乘客年齡和性別的散點圖

在這一步,我們創(chuàng)建了一個散點圖,將船票價格 (Fare) 與乘客的年齡和性別進行了比較。這種圖表可以幫助我們觀察票價與年齡和性別之間的關(guān)系。

# 運行以下代碼
# creates the plot using
lm = sns.lmplot(x = 'Age', y = 'Fare', data = titanic, hue = 'Sex', fit_reg=False)
# set title
lm.set(title = 'Fare x Age')
# get the axes object and tweak it
axes = lm.axes
axes[0,0].set_ylim(-5,)
axes[0,0].set_xlim(-5,85)

 (-5.0, 85.0)

步驟7 有多少人生還?

我們統(tǒng)計了生還乘客的數(shù)量,這是泰坦尼克災(zāi)難中一個重要的統(tǒng)計指標(biāo)。在這個數(shù)據(jù)集中,有342人幸存下來。

# 運行以下代碼
titanic.Survived.sum()

342

步驟8 繪制一個展示船票價格的直方圖

最后,我們創(chuàng)建了一個直方圖,顯示了不同船票價格的頻率分布。這種圖表可以幫助我們了解船票價格的分布情況。

# 運行以下代碼
# sort the values from the top to the least value and slice the first 5 items
df = titanic.Fare.sort_values(ascending = False)
df
# create bins interval using numpy
binsVal = np.arange(0,600,10)
binsVal
# create the plot
plt.hist(df, bins = binsVal)
# Set the title and labels
plt.xlabel('Fare')
plt.ylabel('Frequency')
plt.title('Fare Payed Histrogram')
# show the plot
plt.show()

總結(jié)

我們介紹了數(shù)據(jù)可視化的基本步驟,并使用了 matplotlib 和 seaborn 庫來創(chuàng)建不同類型的圖表。具體來說,我們使用了扇形圖展示比例、散點圖展示關(guān)系、直方圖展示分布情況等。這些圖表有助于我們更好地理解泰坦尼克災(zāi)難數(shù)據(jù),探索性別比例、票價分布以及生還人數(shù)等方面的信息。

1、Seaborn簡介和基本繪圖函數(shù)

Seaborn 是一個用于數(shù)據(jù)可視化的 Python 庫,它建立在 Matplotlib 的基礎(chǔ)之上,提供了更高級、更美觀和更方便的繪圖功能。以下是 Seaborn 中常用的一些創(chuàng)建圖表的函數(shù):

  • sns.scatterplot(): 用于創(chuàng)建散點圖,展示兩個變量之間的關(guān)系。
  • sns.lineplot(): 繪制線圖,通常用于顯示時間序列數(shù)據(jù)的趨勢。
  • sns.barplot(): 創(chuàng)建條形圖,用于比較不同類別之間的數(shù)值關(guān)系。
  • sns.countplot(): 繪制計數(shù)圖,用于顯示每個類別的頻數(shù)或計數(shù)。
  • sns.boxplot(): 繪制箱線圖,展示數(shù)據(jù)的分布和異常值。
  • sns.violinplot(): 創(chuàng)建小提琴圖,結(jié)合了箱線圖和核密度估計,用于展示數(shù)據(jù)分布。
  • sns.heatmap(): 生成熱力圖,通常用于顯示相關(guān)性矩陣或二維數(shù)據(jù)的值分布。
  • sns.pairplot(): 創(chuàng)建成對關(guān)系圖,展示數(shù)據(jù)集中多個變量之間的散點圖和直方圖。
  • sns.distplot(): 繪制單變量的分布圖,包括直方圖和核密度估計。
  • sns.jointplot(): 創(chuàng)建聯(lián)合圖,同時顯示兩個變量的單變量分布和二維關(guān)系。
  • sns.lmplot(): 繪制線性回歸模型的散點圖和回歸線。
  • sns.catplot(): 用于創(chuàng)建分類圖,可以包括多個子圖,通常用于比較不同組或類別之間的關(guān)系。
  • sns.relplot(): 繪制關(guān)系圖,用于可視化兩個或多個變量之間的關(guān)系。

2、前文中所用的Seaborn

以前文所使用的lmplot為例:sns.lmplot() 是 Seaborn 庫中用于創(chuàng)建線性回歸模型圖的函數(shù)。它通常用于可視化兩個變量之間的線性關(guān)系,同時可以添加回歸線和置信區(qū)間。

sns.lmplot(x, y, data, hue=None, col=None, row=None, palette=None, height=5, aspect=1, markers='o', scatter_kws=None, line_kws=None)

參數(shù)說明:

  • x 和 y:分別是數(shù)據(jù)框中的列名,用于表示 x 軸和 y 軸上的變量。
  • data:要使用的數(shù)據(jù)框,包含 x 和 y 列。
  • hue:可選參數(shù),用于根據(jù)某一列的不同取值給數(shù)據(jù)點著色,通常用于表示分類變量。
  • col 和 row:可選參數(shù),用于在多個子圖中繪制不同的圖表,通常用于表示分類變量。
  • palette:可選參數(shù),用于指定顏色調(diào)色板,用于著色數(shù)據(jù)點或線條。
  • height:圖的高度。
  • aspect:圖的縱橫比。
  • markers:可選參數(shù),用于指定數(shù)據(jù)點的標(biāo)記樣式。
  • scatter_kws 和 line_kws:可選參數(shù),用于傳遞給散點圖和回歸線的其他參數(shù)。

sns.lmplot() 函數(shù)的作用是繪制散點圖,并根據(jù)數(shù)據(jù)擬合一個線性回歸模型。它通常用于研究兩個連續(xù)變量之間的關(guān)系,以及回歸模型的擬合情況。

import seaborn as sns
import matplotlib.pyplot as plt
# 創(chuàng)建一個示例數(shù)據(jù)框
data = sns.load_dataset("tips")
# 使用lmplot繪制散點圖和回歸線
sns.lmplot(x="total_bill", y="tip", data=data)
# 添加回歸線的置信區(qū)間
sns.lmplot(x="total_bill", y="tip", data=data, ci=None)
# 使用hue參數(shù)根據(jù)分類變量著色
sns.lmplot(x="total_bill", y="tip", data=data, hue="sex")
# 使用col和row參數(shù)創(chuàng)建多個子圖
sns.lmplot(x="total_bill", y="tip", data=data, col="time", row="sex")
# 自定義標(biāo)記樣式和顏色
sns.lmplot(x="total_bill", y="tip", data=data, markers=["o", "x"], palette="Set1")
plt.show()

3、Seaborn的樣式控制

Seaborn 允許你控制圖形的樣式和外觀,以使你的數(shù)據(jù)可視化更加美觀和易于理解。你可以使用 Seaborn 提供的各種樣式設(shè)置和主題來自定義圖形的外觀。

樣式設(shè)置(Style Set): Seaborn 提供了不同的樣式設(shè)置,通過 sns.set_style() 函數(shù)可以進行切換。常用的樣式設(shè)置包括 "whitegrid"、"darkgrid"、"white""dark" 和 "ticks"。每種樣式設(shè)置具有不同的背景和網(wǎng)格線樣式,你可以根據(jù)需要選擇合適的樣式。

import seaborn as sns
# 使用不同的樣式設(shè)置
sns.set_style("whitegrid")
sns.set_style("darkgrid")
sns.set_style("white")
sns.set_style("dark")
sns.set_style("ticks")

圖形主題(Themes): 通過 sns.set_theme() 函數(shù),你可以選擇不同的圖形主題,包括 "darkgrid"、"whitegrid"、"dark"、"white" 和 "ticks",這與樣式設(shè)置類似。不同的主題將影響整個圖形的外觀。

import seaborn as sns
# 使用不同的圖形主題
sns.set_theme(style="darkgrid")
sns.set_theme(style="whitegrid")
sns.set_theme(style="dark")
sns.set_theme(style="white")
sns.set_theme(style="ticks")

顏色調(diào)色板(Color Palettes): Seaborn 提供了各種顏色調(diào)色板,用于指定圖形中的顏色。你可以使用 sns.color_palette() 函數(shù)來自定義顏色調(diào)色板,也可以使用已經(jīng)定義好的顏色調(diào)色板,如 "deep"、"pastel"、"dark" 等。

import seaborn as sns
# 使用不同的顏色調(diào)色板
sns.color_palette("deep")
sns.color_palette("pastel")
sns.color_palette("dark")

坐標(biāo)軸刻度(Axis Ticks): 你可以通過 sns.set_context() 函數(shù)來控制坐標(biāo)軸刻度的大小和字體??蛇x的上下文包括 "paper"、"notebook"、"talk" 和 "poster"。

import seaborn as sns
# 設(shè)置坐標(biāo)軸刻度的上下文
sns.set_context("paper")
sns.set_context("notebook")
sns.set_context("talk")
sns.set_context("poster")

這些控制樣式的方法可以根據(jù)你的需求來自定義 Seaborn 圖形的外觀,使其更符合你的數(shù)據(jù)可視化目標(biāo)和審美標(biāo)準(zhǔn)。你可以根據(jù)具體情況組合使用這些設(shè)置來創(chuàng)建最適合你的圖形樣式。

以上就是pandas探索你的數(shù)據(jù)實現(xiàn)可視化示例詳解的詳細(xì)內(nèi)容,更多關(guān)于pandas數(shù)據(jù)可視化的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • 基于深度學(xué)習(xí)和OpenCV實現(xiàn)目標(biāo)檢測

    基于深度學(xué)習(xí)和OpenCV實現(xiàn)目標(biāo)檢測

    這篇文章主要介紹了通過使用OpenCV進行基于深度學(xué)習(xí)的對象檢測以及使用OpenCV檢測視頻,文中的示例代碼講解詳細(xì),需要的可以參考一下
    2021-12-12
  • python實現(xiàn)獲取Ip歸屬地等信息

    python實現(xiàn)獲取Ip歸屬地等信息

    本文給大家簡單介紹了下如何使用Python實現(xiàn)獲取IP歸屬地信息的方法和代碼,非常的實用,有需要的小伙伴可以參考下
    2016-08-08
  • python scipy.spatial.distance 距離計算函數(shù) ?

    python scipy.spatial.distance 距離計算函數(shù) ?

    本文主要介紹了python scipy.spatial.distance 距離計算函數(shù),文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-03-03
  • python圖形用戶接口實例詳解

    python圖形用戶接口實例詳解

    這篇文章主要為大家詳細(xì)介紹了python圖形用戶接口實例,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-12-12
  • OpenCV圖像的幾何變換處理方法詳解

    OpenCV圖像的幾何變換處理方法詳解

    這篇文章主要給大家介紹了關(guān)于OpenCV圖像的幾何變換處理的相關(guān)資料,圖像的幾何變換是指將一幅圖像映射到另一幅圖像內(nèi),有縮放、翻轉(zhuǎn)、仿射變換、透視、重映射等操作,需要的朋友可以參考下
    2024-03-03
  • 利用Python查看目錄中的文件示例詳解

    利用Python查看目錄中的文件示例詳解

    這篇文章主要給大家介紹了關(guān)于利用Python查看目錄中的文件,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面跟著小編來一起學(xué)習(xí)學(xué)習(xí)吧。
    2017-08-08
  • GPU版本安裝Pytorch的最新方法步驟

    GPU版本安裝Pytorch的最新方法步驟

    最近深度學(xué)習(xí)需要用GPU版本的pytorch來加速運算,所以下面這篇文章主要給大家介紹了關(guān)于GPU版本安裝Pytorch的最新方法步驟,文中通過實例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-02-02
  • pycharm創(chuàng)建django項目出現(xiàn)路徑錯誤問題

    pycharm創(chuàng)建django項目出現(xiàn)路徑錯誤問題

    在PyCharm中創(chuàng)建Django項目時,若使用之前項目的環(huán)境編譯器,且已修改其根目錄,則新建項目路徑可能出錯。解決辦法是在設(shè)置中選擇Project,通過齒輪圖標(biāo)進入Show?All,選擇編譯器路徑,點擊筆形圖修改Development?configuration的Root?path為/,以確保新項目能正確創(chuàng)建
    2024-09-09
  • python生成隨機紅包的實例寫法

    python生成隨機紅包的實例寫法

    在本篇文章里小編給大家整理的是關(guān)于python生成隨機紅包的實例寫法以及相關(guān)知識點,有需要的朋友們可以學(xué)習(xí)下。
    2019-09-09
  • Pandas計算元素的數(shù)量和頻率的方法(出現(xiàn)的次數(shù))

    Pandas計算元素的數(shù)量和頻率的方法(出現(xiàn)的次數(shù))

    本文主要介紹了Pandas計算元素的數(shù)量和頻率的方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-02-02

最新評論