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

Python 更快進(jìn)行探索性數(shù)據(jù)分析的四個(gè)方法

 更新時(shí)間:2021年11月16日 14:55:15   作者:Python學(xué)習(xí)與數(shù)據(jù)挖掘  
今天我給大家分享幾種更快的探索性數(shù)據(jù)分析方法,它們可以進(jìn)一步加速 EDA。 我們以一個(gè)學(xué)生考試成績(jī)的例子,創(chuàng)建一個(gè)如下所示的 DataFrame 并繼續(xù)操作。歡迎收藏學(xué)習(xí),喜歡點(diǎn)贊支持

大家好,常用探索性數(shù)據(jù)分析方法很多,比如常用的 Pandas DataFrame 方法有 .head()、.tail()、.info()、.describe()、.plot() 和 .value_counts()。

import pandas as pd
import numpy as np
df = pd.DataFrame( {     
"Student" : ["Mike", "Jack", "Diana", "Charles", "Philipp", "Charles", "Kale", "Jack"] ,           
"City" : ["London", "London", "Berlin", "London", "London", "Berlin", "London", "Berlin"] ,
"Age" : [20, 40, 18, 24, 37, 40, 44, 20 ],
"Maths_Score" : [84, 80, 50, 36, 44, 24, 41, 35],
"Science_Score" : [66, 83, 51, 35, 43, 58, 71, 65]} ) 
df

在 Pandas 中創(chuàng)建 groupby() 對(duì)象

在許多情況下,我們希望將數(shù)據(jù)集拆分為多個(gè)組并對(duì)這些組進(jìn)行處理。 Pandas 方法 groupby() 用于將 DataFrame 中的數(shù)據(jù)分組。

與其一起使用 groupby() 和聚合方法,不如創(chuàng)建一個(gè) groupby() 對(duì)象。 理想的情況是,我們可以在需要時(shí)直接使用此對(duì)象。

讓我們根據(jù)列“City”將給定的 DataFrame 分組

df_city_group = df.groupby("City")

我們創(chuàng)建一個(gè)對(duì)象 df_city_group,該對(duì)象可以與不同的聚合相結(jié)合,例如 min()、max()、mean()、describe() 和 count()。 一個(gè)例子如下所示。

在這里插入圖片描述


要獲取“City”是Berlin的 DataFrame 子集,只需使用方法 .get_group()

在這里插入圖片描述


這不需要為每個(gè)組創(chuàng)建每個(gè)子 DataFrame 的副本,比較節(jié)省內(nèi)存。

另外,使用 .groupby() 進(jìn)行切片比常規(guī)方法快 2 倍??!

在這里插入圖片描述

使用 .nlargest()

通常,我們根據(jù)特定列的值了解 DataFrame 的 Top 3 或 Top 5 數(shù)據(jù)。例如,從考試中獲得前 3 名得分者或從數(shù)據(jù)集中獲得前 5 名觀看次數(shù)最多的電影。使用 Pandas .nlargest() 是最簡(jiǎn)單的方式。

df.nlargest(N, column_name, keep = ‘first' )

使用 .nlargest() 方法,可以檢索包含指定列的 Top ‘N' 值的 DataFrame 行。

在上面的示例中,讓我們獲取前 3 個(gè)“Maths_Score”的 DataFrame 的行。

在這里插入圖片描述

如果兩個(gè)值之間存在聯(lián)系,則可以修改附加參數(shù)和可選參數(shù)。 它需要值“first”、“l(fā)ast”和“all”來檢索領(lǐng)帶中的第一個(gè)、最后一個(gè)和所有值。這種方法的優(yōu)點(diǎn)是,你不需要專門對(duì) DataFrame 進(jìn)行排序。

使用 .nsmallest()

與Top 3 或5 類似,有時(shí)我們也需要DataFrame 中的Last 5 條記錄。例如,獲得評(píng)分最低的 5 部電影或考試中得分最低的 5 名學(xué)生。使用 Pandas .nsmallest() 是最簡(jiǎn)單的方式

df.nsmallestst(N, column_name, keep = ‘first' )

使用 .nsmallest() 方法,可以檢索包含指定列的底部“N”個(gè)值的 DataFrame 行。

在同一個(gè)示例中,讓我們獲取 DataFrame“df”中“Maths_Score”最低的 3 行。

在這里插入圖片描述

邏輯比較

比較運(yùn)算符 <、>、<=、>=、==、!= 及其包裝器 .lt()、.gt()、.le()、.ge()、.eq() 和 .ne() 分別在以下情況下非常方便將 DataFrame 與基值進(jìn)行比較,這種比較會(huì)產(chǎn)生一系列布爾值,這些值可用作以后的指標(biāo)。

  • 基于比較對(duì) DataFrame 進(jìn)行切片
  • 可以基于與值的比較從 DataFrame 中提取子集。
  • 根據(jù)兩列的比較在現(xiàn)有 DataFrame 中創(chuàng)建一個(gè)新列。

所有這些場(chǎng)景都在下面的示例中進(jìn)行了解釋

# 1. Comparing the DataFrame to a base value
# Selecting the columns with numerical values only
df.iloc[:,2:5].gt(50)
df.iloc[:,2:5].lt(50)

# 2. Slicing the DataFrame based on comparison
# df1 is subset of df when values in "Maths_Score" column are not equal or equal to '35'
df1 = df[df["Maths_Score"].ne(35)]
df2 = df[df["Maths_Score"].eq(35)]


# 3. Creating new column of True-False values by comparing two columns
df["Maths_Student"] = df["Maths_Score"].ge(df["Science_Score"])
df["Maths_Student_1"] = df["Science_Score"].le(df["Maths_Score"])

總結(jié)

在使用 Python 進(jìn)行數(shù)據(jù)分析時(shí),我發(fā)現(xiàn)這些方法非常方便,它確實(shí)讓數(shù)據(jù)分析變得更快。歡迎大家嘗試這些,如果你有那些更棒的方法,歡迎評(píng)論區(qū)留言!

技術(shù)交流

歡迎轉(zhuǎn)載、收藏、有所收獲點(diǎn)贊支持一下!

在這里插入圖片描述

到此這篇關(guān)于Python 更快進(jìn)行探索性數(shù)據(jù)分析的四個(gè)方法的文章就介紹到這了,更多相關(guān)Python 數(shù)據(jù)分析內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Pytorch使用shuffle打亂數(shù)據(jù)的操作

    Pytorch使用shuffle打亂數(shù)據(jù)的操作

    這篇文章主要介紹了Pytorch使用shuffle打亂數(shù)據(jù)的操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-05-05
  • python學(xué)生管理系統(tǒng)開發(fā)

    python學(xué)生管理系統(tǒng)開發(fā)

    這篇文章主要為大家詳細(xì)介紹了基礎(chǔ)版和函數(shù)版的python學(xué)生管理系統(tǒng)開發(fā),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-01-01
  • python3的print()函數(shù)的用法圖文講解

    python3的print()函數(shù)的用法圖文講解

    在本篇內(nèi)容里小編給各位分享的是關(guān)于python3的print()函數(shù)的用法知識(shí)點(diǎn),對(duì)此有需要的朋友們跟著學(xué)習(xí)下吧。
    2019-07-07
  • 解決PDF 轉(zhuǎn)圖片時(shí)丟文字的一種可能方式

    解決PDF 轉(zhuǎn)圖片時(shí)丟文字的一種可能方式

    這篇文章主要介紹了解決PDF 轉(zhuǎn)圖片時(shí)丟字的一種可能方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2021-03-03
  • Python中CSV文件的讀寫庫操作方法

    Python中CSV文件的讀寫庫操作方法

    Python 中提供了一個(gè)官方的標(biāo)準(zhǔn)庫來處理這種文件類型,那就是 CSV 庫,這篇文章主要介紹了Python中CSV文件的讀寫庫,需要的朋友可以參考下
    2022-12-12
  • Python3.8中使用f-strings調(diào)試

    Python3.8中使用f-strings調(diào)試

    這篇文章主要介紹了Python3.8中使用f-strings調(diào)試的相關(guān)知識(shí),本文通過實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-05-05
  • python?Ajenti控制面板輕松地管理所有服務(wù)器網(wǎng)站

    python?Ajenti控制面板輕松地管理所有服務(wù)器網(wǎng)站

    Ajenti是一個(gè)值得擁有的管理面板,免費(fèi)開源的管理面板工具,可以幫助你集中管理多個(gè)服務(wù)器和網(wǎng)站,Ajenti?支持?Linux、BSD、Mac?OS?X和Windows?等多個(gè)操作系統(tǒng),并且可以通過一個(gè)直觀的?Web?界面來完成各種系統(tǒng)管理任務(wù)
    2024-01-01
  • Python通過socketserver處理多個(gè)鏈接

    Python通過socketserver處理多個(gè)鏈接

    這篇文章主要介紹了Python通過socketserver處理多個(gè)鏈接,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-03-03
  • python?skimage圖像處理

    python?skimage圖像處理

    這篇文章主要為大家介紹了python?skimage圖像處理,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-06-06
  • Python實(shí)現(xiàn)自動(dòng)玩連連看的腳本分享

    Python實(shí)現(xiàn)自動(dòng)玩連連看的腳本分享

    最近女朋友在玩連連看,玩了一個(gè)星期了還沒通關(guān),真的是菜。實(shí)在是看不過去了,直接用python寫了個(gè)腳本代碼可以自動(dòng)玩連連看,感興趣的可以了解一下
    2022-04-04

最新評(píng)論