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

Python 使用pandas實(shí)現(xiàn)查詢和統(tǒng)計(jì)示例詳解

 更新時(shí)間:2023年08月20日 09:03:20   作者:全棧若城  
這篇文章主要為大家介紹了Python 使用pandas實(shí)現(xiàn)查詢和統(tǒng)計(jì)示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪

前言

在使用 Pandas 進(jìn)行數(shù)據(jù)分析時(shí),我們需要經(jīng)常進(jìn)行查詢和統(tǒng)計(jì)分析。

但是Pandas 是如何進(jìn)行查詢和統(tǒng)計(jì)分析得嘞, let's go :

數(shù)據(jù)篩選查詢

通過列名索引篩選數(shù)據(jù):

import pandas as pd

data = {'name': ['Tom', 'Jerry', 'Lucy', 'Amy'],
      'age': [18, 19, 20, 21],
      'gender': ['M', 'M', 'F', 'F']}
df = pd.DataFrame(data)
# 選取 'name' 屬性
df['name']
# 選取 'age' 和 'gender' 屬性
df[['age', 'gender']]

通過位置索引篩選數(shù)據(jù):

# 通過位置索引選取第一行數(shù)據(jù)
df.iloc[0]
# 通過位置索引選取第一行和第二行數(shù)據(jù)
df.iloc[0:2]

通過布爾索引篩選數(shù)據(jù):

# 選取年齡大于等于 20 的記錄
df[df['age'] >= 20]
# 選取性別為女的記錄
df[df['gender'] == 'F']

數(shù)據(jù)統(tǒng)計(jì)分析

Pandas 提供豐富的統(tǒng)計(jì)函數(shù),可以方便地進(jìn)行數(shù)據(jù)分析。

描述性統(tǒng)計(jì)分析:

# 統(tǒng)計(jì)數(shù)值型數(shù)據(jù)的基本描述性統(tǒng)計(jì)信息
df.describe()
# 統(tǒng)計(jì)各屬性的非空值數(shù)量
df.count()
# 統(tǒng)計(jì)各屬性的平均值
df.mean()
# 統(tǒng)計(jì)各屬性的方差
df.var()
# 統(tǒng)計(jì)各屬性的標(biāo)準(zhǔn)差
df.std()

分組統(tǒng)計(jì)分析:

# 按照性別分組,統(tǒng)計(jì)年齡均值
df.groupby('gender')['age'].mean()
# 按照性別和年齡分組,統(tǒng)計(jì)人數(shù)
df.groupby(['gender', 'age'])['name'].count()

交叉表分析:

# 構(gòu)造一個(gè)交叉表,統(tǒng)計(jì)不同性別和年齡的人數(shù)
pd.crosstab(df['gender'], df['age'])

數(shù)據(jù)排序

按照某列數(shù)據(jù)進(jìn)行升序排列:

df.sort_values(by='age')

按照某列數(shù)據(jù)進(jìn)行降序排列:

df.sort_values(by='age', ascending=False)

數(shù)據(jù)聚合

對(duì)整個(gè) DataFrame 進(jìn)行聚合操作:

# 聚合函數(shù):求和、均值、中位數(shù)、最大值、最小值
df.aggregate([sum, 'mean', 'median', max, min])

對(duì)某列數(shù)據(jù)進(jìn)行聚合操作:

# 統(tǒng)計(jì)年齡平均值
df['age'].mean()
# 統(tǒng)計(jì)年齡總和
df['age'].sum()
# 統(tǒng)計(jì)年齡最大值
df['age'].max()

處理缺失數(shù)據(jù)

判斷數(shù)據(jù)是否為缺失值:

# 返回一個(gè)布爾型 DataFrame,表明各元素是否為缺失值
df.isnull()

刪除缺失值所在的行或列:

# 刪除所有含有缺失值的行
df.dropna()
# 刪除所有含有缺失值的列
df.dropna(axis=1)

用指定值填充缺失值:

# 將缺失值使用 0 填充
df.fillna(0)

數(shù)據(jù)去重

對(duì) DataFrame 去重:

# 根據(jù)所有列值的重復(fù)性進(jìn)行去重
df.drop_duplicates()
# 根據(jù)指定列值的重復(fù)性進(jìn)行去重
df.drop_duplicates(subset=['name', 'age'])

對(duì) Series 去重:

# 對(duì) 'name' 列進(jìn)行去重
df['name'].drop_duplicates()

數(shù)據(jù)合并

橫向(按列)合并 DataFrame:

# 創(chuàng)建一個(gè)新的 DataFrame
other_data = {'name': ['Tom', 'Jerry', 'Lucy', 'Amy'],
            'score': [80, 90, 85, 95]}
other_df = pd.DataFrame(other_data)
# 將兩個(gè) DataFrame 在列上合并
pd.concat([df, other_df], axis=1)

縱向(按行)合并 DataFrame:

# 創(chuàng)建一個(gè)新的 DataFrame
other_data = {'name': ['Kate', 'Jack'],
            'age': [19, 20],
            'gender': ['F', 'M']}
other_df = pd.DataFrame(other_data)
# 將兩個(gè) DataFrame 在行上合并
pd.concat([df, other_df], axis=0)

數(shù)據(jù)透視表

創(chuàng)建數(shù)據(jù)透視表:

# 統(tǒng)計(jì)不同性別和年齡的人數(shù),以 'gender' 為行、'age' 為列,'name' 計(jì)數(shù)
pd.pivot_table(df, values='name', index='gender', columns='age', aggfunc='count')

以上就是Python 使用pandas實(shí)現(xiàn)查詢和統(tǒng)計(jì)示例詳解的詳細(xì)內(nèi)容,更多關(guān)于Python pandas查詢統(tǒng)計(jì)的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • Matlab、Python為工具解析數(shù)據(jù)可視化之美

    Matlab、Python為工具解析數(shù)據(jù)可視化之美

    下面介紹一些數(shù)據(jù)可視化的作品(包含部分代碼),主要是地學(xué)領(lǐng)域,可遷移至其他學(xué)科,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧
    2021-11-11
  • python創(chuàng)建字典(dict)的幾種方法小結(jié)(含代碼示例)

    python創(chuàng)建字典(dict)的幾種方法小結(jié)(含代碼示例)

    字典(Dictionary)是Python中一種非常靈活的數(shù)據(jù)結(jié)構(gòu),用于存儲(chǔ)鍵值對(duì)(key-value pairs),在Python中創(chuàng)建字典有多種方法,每種方法都有其特定的使用場(chǎng)景和優(yōu)勢(shì),本文將詳細(xì)介紹Python中創(chuàng)建字典的幾種常見方法,需要的朋友可以參考下
    2024-09-09
  • python sorted函數(shù)原理解析及練習(xí)

    python sorted函數(shù)原理解析及練習(xí)

    這篇文章主要介紹了python sorted函數(shù)原理解析及練習(xí),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-02-02
  • python快速查找算法應(yīng)用實(shí)例

    python快速查找算法應(yīng)用實(shí)例

    這篇文章主要介紹了python快速查找算法,是一個(gè)比較經(jīng)典的算法應(yīng)用,有一定的借鑒價(jià)值,需要的朋友可以參考下
    2014-09-09
  • pandas調(diào)整列的順序以及添加列的實(shí)現(xiàn)

    pandas調(diào)整列的順序以及添加列的實(shí)現(xiàn)

    這篇文章主要介紹了pandas調(diào)整列的順序以及添加列的實(shí)現(xiàn)操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2021-03-03
  • Python虛擬環(huán)境的創(chuàng)建和使用詳解

    Python虛擬環(huán)境的創(chuàng)建和使用詳解

    這篇文章主要給大家介紹了關(guān)于Python虛擬環(huán)境的創(chuàng)建和使用的相關(guān)資料,文中通過圖文介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-09-09
  • Python如何獲取模塊中類以及類的屬性方法信息

    Python如何獲取模塊中類以及類的屬性方法信息

    python對(duì)屬性權(quán)限的控制是通過屬性名來實(shí)現(xiàn)的,下面這篇文章主要給大家介紹了關(guān)于Python如何獲取模塊中類以及類的屬性方法信息的相關(guān)資料,需要的朋友可以參考下
    2021-12-12
  • Python實(shí)現(xiàn)語音轉(zhuǎn)文本的兩種方法

    Python實(shí)現(xiàn)語音轉(zhuǎn)文本的兩種方法

    這篇文章主要給大家介紹了關(guān)于Python實(shí)現(xiàn)語音轉(zhuǎn)文本的兩種方法,Python提供了許多工具和庫來進(jìn)行這些任務(wù),本文通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-06-06
  • Python基于SciPy庫實(shí)現(xiàn)統(tǒng)計(jì)分析與建模

    Python基于SciPy庫實(shí)現(xiàn)統(tǒng)計(jì)分析與建模

    SciPy是一個(gè)強(qiáng)大的Python庫,提供了豐富的科學(xué)計(jì)算和數(shù)據(jù)分析工具,本文我們將探討如何使用Python和SciPy庫進(jìn)行統(tǒng)計(jì)分析和建模,感興趣的可以學(xué)習(xí)一下
    2023-06-06
  • Python實(shí)現(xiàn)周日歷與時(shí)間相互轉(zhuǎn)換

    Python實(shí)現(xiàn)周日歷與時(shí)間相互轉(zhuǎn)換

    周日歷是日常生活中不常用到的歷法系統(tǒng),一般用于政府、商務(wù)的會(huì)計(jì)年度或者學(xué)校教學(xué)日歷中。本文為大家介紹了如何利用Python語言實(shí)現(xiàn)周日歷與時(shí)間相互轉(zhuǎn)換,感興趣的可以學(xué)習(xí)一下
    2022-07-07

最新評(píng)論