最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Pandas異常值處理小結(jié)

 更新時(shí)間:2024年07月24日 11:32:39   作者:起名字真難.  
在Pandas中,異常值是數(shù)據(jù)中那些與其他數(shù)據(jù)點(diǎn)顯著不同的點(diǎn)本文主要介紹了Pandas異常值處理小結(jié),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

在Pandas中,異常值(或稱為離群值)是數(shù)據(jù)中那些與其他數(shù)據(jù)點(diǎn)顯著不同的點(diǎn)。這些異常值可能是由于錯(cuò)誤、異常事件或數(shù)據(jù)的自然變異產(chǎn)生的。處理異常值的方法取決于數(shù)據(jù)的性質(zhì)、分析的目的以及異常值對分析的影響。

在異常值處理的時(shí)候可能會用到的函數(shù)

①、describe():查看每一列的描述性統(tǒng)計(jì)量

②、df.info():查看數(shù)據(jù)信息

③、df.std():可以求得DataFrame對象每一列的標(biāo)準(zhǔn)差

④、df.drop():刪除特定索引

⑤、unique():唯一,去重

⑥、query():按條件查詢

⑦、df.sort_values():根據(jù)值排序

⑧、sort_index():根據(jù)索引排序...

1、describe()

   describe() 函數(shù)在 Pandas 中是一個(gè)用于生成 DataFrame 或 Series 中數(shù)值列統(tǒng)計(jì)摘要的便捷方法。它提供了豐富的描述性統(tǒng)計(jì)信息,幫助用戶快速了解數(shù)據(jù)的分布情況??梢岳?T轉(zhuǎn)置。

默認(rèn)參數(shù)下的輸出

默認(rèn)情況下,describe() 函數(shù)會計(jì)算以下統(tǒng)計(jì)量(對于數(shù)值型):

  • count:非缺失值的數(shù)量。
  • mean:均值。
  • std:標(biāo)準(zhǔn)差。
  • min:最小值。
  • 25%:第一四分位數(shù)(或稱為25%分位數(shù))。
  • 50%:第二四分位數(shù)(中位數(shù))。
  • 75%:第三四分位數(shù)。
  • max:最大值。
import pandas as pd
data = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
a = pd.DataFrame(data, index=['a', 'b', 'c'])
print(a.describe())

2、std

   DataFrame.std() 方法可以用來計(jì)算DataFrame對象每一列的標(biāo)準(zhǔn)差(standard deviation)。默認(rèn)情況下,這個(gè)方法會忽略NaN值,只計(jì)算非空值的標(biāo)準(zhǔn)差。

import pandas as pd  
  
# 創(chuàng)建一個(gè)簡單的DataFrame  
data = {  
    'A': [1, 2, 3, 4, 5],  
    'B': [10, 20, 30, 20, 50],  
    'C': [pd.np.nan, 2, 4, 4, 6]  # 包含NaN值  
}  
df = pd.DataFrame(data)  
  
# 計(jì)算每一列的標(biāo)準(zhǔn)差  
std_values = df.std()  
  
print(std_values)

3、drop

在Pandas中,DataFrame.drop() 方法用于刪除行或列。這個(gè)方法非常有用,特別是當(dāng)你需要清理數(shù)據(jù)或去除某些不需要的行/列時(shí)。

方法簽名

DataFrame.drop(labels=None, axis=0, index=None, columns=None, inplace=False, level=None, errors='raise')

參數(shù)說明

  • labels:要?jiǎng)h除的行或列的標(biāo)簽。
  • axis:指定刪除行(axis=0 或 axis='index')還是列(axis=1 或 axis='columns')。
  • index 和 columns:這些是 labels 的別名,用于分別指定要?jiǎng)h除的行和列。但是,通常建議直接使用 labels 和 axis。
  • inplace:如果為True,則在原始DataFrame上進(jìn)行修改并返回None。否則,返回一個(gè)新的DataFrame。
  • level:對于具有多級索引的DataFrame,指定要?jiǎng)h除的級別。
  • errors:指定如何處理錯(cuò)誤。默認(rèn)為 'raise',表示出現(xiàn)錯(cuò)誤時(shí)拋出異常。如果設(shè)置為 'ignore',則忽略錯(cuò)誤。
import pandas as pd
data = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
a = pd.DataFrame(data, index=['a', 'b', 'c'])
print(a.drop('a'))  # 默認(rèn)的情況下刪除一行
print(a.drop(0, axis=1)) # 刪除一列

4、unique()

在Pandas中,unique() 是一個(gè)常用的方法,它主要用于獲取Series對象列的唯一值(unique values)。這個(gè)方法返回一個(gè)NumPy數(shù)組,其中包含Series的唯一值。DataFrame沒有unidue。

import pandas as pd
data = [[4, 2, 3], [4, 5, 6], [7, 8, 9]]
a = pd.DataFrame(data, index=['a', 'b', 'c'])
print(a[0].unique())

5、query()

在Pandas庫中,query() 方法是DataFrame對象的一個(gè)功能強(qiáng)大的工具,用于根據(jù)特定的條件篩選和查詢數(shù)據(jù)。以下是關(guān)于 query() 方法的詳細(xì)解釋:

1. 功能概述

  • query() 方法允許用戶根據(jù)邏輯表達(dá)式(可以是單個(gè)條件或組合條件)來篩選DataFrame中的數(shù)據(jù)。
  • 它返回一個(gè)新的DataFrame,其中僅包含滿足給定條件的數(shù)據(jù)行。
  • 與 loc 和 iloc 相比,query() 方法提供了更直觀、類似于SQL的語法,使得篩選條件更易讀、易寫。

2. 語法結(jié)構(gòu)

DataFrame.query(expr, inplace=False, **kwargs)

  • expr: 表示查詢條件的字符串。
  • inplace: 默認(rèn)為False,表示不修改原始DataFrame,而是返回一個(gè)新的DataFrame。如果設(shè)置為True,則直接在原始DataFrame上進(jìn)行修改。
  • **kwargs: 其他關(guān)鍵字參數(shù),通常與 eval() 方法的參數(shù)相關(guān)。
import pandas as pd
data = [[4, 2, 3], [4, 5, 6], [7, 8, 9]]
a = pd.DataFrame(data, index=['a', 'b', 'c'], columns=list("ABC"))
print(a.query(' A== 4'))  # 把A == 4篩選出來
n = 4
print(a.query('A == @n'))  # 這里寫一個(gè)@ 在能說明n為標(biāo)量
# 這里的“ ” 里面可以有and or in ... 

3. 注意事項(xiàng)

  • query() 方法只能用于篩選行,不能用于篩選列。
  • 查詢條件字符串中的列名必須與DataFrame中的列名完全匹配(包括大小寫)。
  • 在使用變量時(shí),請確保變量在調(diào)用 query() 方法之前已經(jīng)被定義并賦值。
  • 當(dāng)使用復(fù)雜的查詢條件時(shí),建議使用括號來明確運(yùn)算符的優(yōu)先級,以避免潛在的錯(cuò)誤。

6、df.sort_values()

在Pandas庫中,DataFrame.sort_values() 方法是用于對DataFrame中的數(shù)據(jù)按照一個(gè)或多個(gè)列的值進(jìn)行排序的。這個(gè)方法非常有用,特別是當(dāng)你需要按照某個(gè)或某些列的值對數(shù)據(jù)進(jìn)行排序以便進(jìn)一步分析或可視化時(shí)。

方法簽名

DataFrame.sort_values(by, axis=0, ascending=True, inplace=False, kind='quicksort', na_position='last', ignore_index=False, key=None)

參數(shù)說明

  • by: 需要依據(jù)其值進(jìn)行排序的列名或列名列表。
  • axis: 排序的軸。0 或 'index' 表示沿著行進(jìn)行排序(即按列的值排序),1 或 'columns' 表示沿著列進(jìn)行排序(DataFrame中不支持按列排序,因此這個(gè)參數(shù)通常設(shè)置為0或'index')。
  • ascending: 排序方向,默認(rèn)為True(升序),如果為False則為降序。
  • inplace: 是否在原地進(jìn)行修改,默認(rèn)為False(返回新的DataFrame),如果為True則直接在原DataFrame上進(jìn)行修改。
  • kind: 排序算法的類型,默認(rèn)為'quicksort'。對于大型數(shù)據(jù)集,'mergesort'和'heapsort'可能更為合適。
  • na_position: 缺失值(NaN)的位置,默認(rèn)為'last'(在末尾),如果為'first'則在開頭。
  • ignore_index: 重新設(shè)置結(jié)果的索引,默認(rèn)為False。如果為True,則結(jié)果索引將會是整數(shù)型的默認(rèn)索引。
  • key: 應(yīng)用于每一列元素在進(jìn)行比較之前的函數(shù)。
import pandas as pd
data = [[9, 2, 3], [4, 5, 6], [1, 8, 9]]
a = pd.DataFrame(data, index=['a', 'b', 'c'], columns=list("ABC"))
print(a.sort_values('A'))  # 默認(rèn)的是升序
print(a.sort_values('A', ascending=False)) # 通過修改ascending=False 變?yōu)榻敌?
print(a.sort_values('a', axis=1))

7、sort_index()

sort_index() 是 Pandas 庫中 DataFrame 和 Series 對象的一個(gè)方法,用于根據(jù)索引值對數(shù)據(jù)進(jìn)行排序。以下是關(guān)于 sort_index() 方法的詳細(xì)解釋:

方法功能

  • sort_index() 主要用于對 DataFrame 或 Series 對象進(jìn)行索引排序。
  • 默認(rèn)情況下,它會根據(jù)索引的升序(ascending=True)進(jìn)行排.

方法簽名

DataFrame.sort_index(*, axis=0, level=None, ascending=True, inplace=False, kind='quicksort', na_position='last', sort_remaining=True, ignore_index=False, key=None)

參數(shù)說明

axis

  • 默認(rèn)為 0,表示按行索引(index)進(jìn)行排序。
  • 如果設(shè)置為 1 或 'columns',則按列索引(columns)進(jìn)行排序(但實(shí)際應(yīng)用中按列索引排序的情況較少)。

level

  • 當(dāng)索引是多重索引時(shí),可以指定按哪一個(gè)或多個(gè)級別進(jìn)行排序。
  • 默認(rèn)為 None,表示按多重索引的第一個(gè)級別排序。

ascending

  • 排序順序,默認(rèn)為 True,表示升序排序。
  • 如果設(shè)置為 False,則進(jìn)行降序排序。

inplace

  • 是否直接在原對象上進(jìn)行修改,默認(rèn)為 False。
  • 如果設(shè)置為 True,則直接在原 DataFrame 或 Series 上進(jìn)行排序,不返回新的對象。

kind

  • 排序算法的種類,默認(rèn)為 'quicksort'。
  • 對于大型數(shù)據(jù)集,可以選擇其他算法,如 'mergesort'。

na_position

  • 缺失值(NaN)的位置,默認(rèn)為 'last',表示將 NaN 值放在最后。
  • 如果設(shè)置為 'first',則將 NaN 值放在前面。

sort_remaining

  • 當(dāng)對多重索引的特定級別進(jìn)行排序時(shí),此參數(shù)控制是否對非指定級別進(jìn)行排序。
  • 默認(rèn)為 True。

ignore_index

  • 當(dāng)對多重索引進(jìn)行排序時(shí),此參數(shù)控制是否重置排序后的索引。
  • 默認(rèn)為 False,即保留多重索引。

key

  • 應(yīng)用于索引值進(jìn)行排序前的函數(shù)。
import pandas as pd
data = [[9, 2, 3], [4, 5, 6], [1, 8, 9]]
a = pd.DataFrame(data, index=['d', 'b', 'c'], columns=list("DBC"))
print(a.sort_index()) # 按照行索引排序
print(a.sort_index(axis=1))  # 按照列索引進(jìn)行排序
li = [1, 2, 3]
b = pd.Series(li, index=['c', 'b', 'a'])
print(b.sort_index())

到此這篇關(guān)于Pandas異常值處理小結(jié)的文章就介紹到這了,更多相關(guān)Pandas異常值內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家! 

相關(guān)文章

  • 使用scrapy實(shí)現(xiàn)爬網(wǎng)站例子和實(shí)現(xiàn)網(wǎng)絡(luò)爬蟲(蜘蛛)的步驟

    使用scrapy實(shí)現(xiàn)爬網(wǎng)站例子和實(shí)現(xiàn)網(wǎng)絡(luò)爬蟲(蜘蛛)的步驟

    本文分二個(gè)示例,第一個(gè)是個(gè)簡單的爬網(wǎng)站的小例子,第二個(gè)例子實(shí)現(xiàn)目是從一個(gè)網(wǎng)站的列表頁抓取文章列表,然后存入數(shù)據(jù)庫中,數(shù)據(jù)庫包括文章標(biāo)題、鏈接、時(shí)間,大家參考使用吧
    2014-01-01
  • Python使用OpenCV轉(zhuǎn)換圖像大小

    Python使用OpenCV轉(zhuǎn)換圖像大小

    在Python中,使用OpenCV庫來轉(zhuǎn)換圖像大小是一個(gè)常見的操作,它可以幫助你調(diào)整圖像到特定的尺寸,以適應(yīng)不同的應(yīng)用場景,比如圖像預(yù)處理、模型輸入等,下面是一個(gè)詳細(xì)的代碼示例,展示了如何使用OpenCV來轉(zhuǎn)換圖像的大小,需要的朋友可以參考下
    2024-09-09
  • Python異常處理:try、except、else、finally的全面解析

    Python異常處理:try、except、else、finally的全面解析

    在Python中,異常是程序在運(yùn)行時(shí)發(fā)生的錯(cuò)誤,當(dāng)Python解釋器遇到一個(gè)它不能處理的錯(cuò)誤時(shí),它會拋出一個(gè)異常,異常處理的主要目的是在程序遇到錯(cuò)誤時(shí),提供一種方法來處理這些錯(cuò)誤,而不是簡單地讓程序崩潰,本文介紹了Python異常處理:try、except、else、finally的全面解析
    2024-07-07
  • 深度解析Python魔法函數(shù)中__getattr__與__getattribute__的核心奧義

    深度解析Python魔法函數(shù)中__getattr__與__getattribute__的核心奧義

    Python作為一門極具靈活性的動(dòng)態(tài)類型語言,其驚艷的動(dòng)態(tài)特性并非憑空而來,魔法函數(shù)正是支撐這一特性的底層靈魂,下面小編就和大家詳細(xì)介紹一下_getattr__與__getattribute__的調(diào)用機(jī)制,核心區(qū)別與實(shí)戰(zhàn)應(yīng)用吧
    2026-03-03
  • python3 打印輸出字典中特定的某個(gè)key的方法示例

    python3 打印輸出字典中特定的某個(gè)key的方法示例

    這篇文章主要介紹了python3 打印輸出字典中特定的某個(gè)key的方法,涉及Python字典的遍歷、判斷、輸出等相關(guān)操作技巧,需要的朋友可以參考下
    2019-07-07
  • spark dataframe 將一列展開,把該列所有值都變成新列的方法

    spark dataframe 將一列展開,把該列所有值都變成新列的方法

    今天小編就為大家分享一篇spark dataframe 將一列展開,把該列所有值都變成新列的方法,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-01-01
  • Python代碼覆蓋率統(tǒng)計(jì)工具coverage.py用法詳解

    Python代碼覆蓋率統(tǒng)計(jì)工具coverage.py用法詳解

    這篇文章主要介紹了Python代碼覆蓋率統(tǒng)計(jì)工具coverage.py用法詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-11-11
  • python實(shí)現(xiàn)簡單五子棋游戲

    python實(shí)現(xiàn)簡單五子棋游戲

    這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)簡單五子棋游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-06-06
  • pytorch 使用半精度模型部署的操作

    pytorch 使用半精度模型部署的操作

    這篇文章主要介紹了pytorch 使用半精度模型部署的操作,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-05-05
  • Python標(biāo)準(zhǔn)庫inspect的具體使用方法

    Python標(biāo)準(zhǔn)庫inspect的具體使用方法

    本篇文章主要介紹了Python標(biāo)準(zhǔn)庫inspect的具體使用方法,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-12-12

最新評論

鄂托克前旗| 武汉市| 信丰县| 郸城县| 瓦房店市| 河池市| 巴林左旗| 古蔺县| 修水县| 陈巴尔虎旗| 濉溪县| 湘潭市| 林州市| 泰州市| 黑龙江省| 天镇县| 乐平市| 封开县| 富阳市| 乐亭县| 靖边县| 普洱| 合山市| 瑞金市| 旅游| 罗江县| 神池县| 威远县| 乌拉特前旗| 邢台县| 全州县| 永兴县| 东丽区| 双柏县| 阿拉善左旗| 永和县| 三亚市| 河东区| 长兴县| 枝江市| 丽水市|