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

pandas || df.dropna() 缺失值刪除操作

 更新時間:2021年03月25日 10:21:23   作者:一個還在掙扎的碼農(nóng)  
這篇文章主要介紹了pandas || df.dropna() 缺失值刪除操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

df.dropna()函數(shù)用于刪除dataframe數(shù)據(jù)中的缺失數(shù)據(jù),即 刪除NaN數(shù)據(jù).

官方函數(shù)說明:

DataFrame.dropna(axis=0, how='any', thresh=None, subset=None, inplace=False)
 Remove missing values.
 See the User Guide for more on which values are considered missing, 
 and how to work with missing data.
Returns
 DataFrame
 DataFrame with NA entries dropped from it.

參數(shù)說明:

Parameters 說明
axis 0為行 1為列,default 0,數(shù)據(jù)刪除維度
how {‘a(chǎn)ny', ‘a(chǎn)ll'}, default ‘a(chǎn)ny',any:刪除帶有nan的行;all:刪除全為nan的行
thresh int,保留至少 int 個非nan行
subset list,在特定列缺失值處理
inplace bool,是否修改源文件

測試:

>>>df = pd.DataFrame({"name": ['Alfred', 'Batman', 'Catwoman'],
          "toy": [np.nan, 'Batmobile', 'Bullwhip'],
          "born": [pd.NaT, pd.Timestamp("1940-04-25"),
              pd.NaT]})
>>>df
    name    toy    born
0  Alfred    NaN    NaT
1  Batman Batmobile 1940-04-25
2 Catwoman  Bullwhip    NaT

刪除至少缺少一個元素的行:

>>>df.dropna()
   name    toy    born
1 Batman Batmobile 1940-04-25

刪除至少缺少一個元素的列:

>>>df.dropna(axis=1)
    name
0  Alfred
1  Batman
2 Catwoman

刪除所有元素丟失的行:

>>>df.dropna(how='all')
    name    toy    born
0  Alfred    NaN    NaT
1  Batman Batmobile 1940-04-25
2 Catwoman  Bullwhip    NaT

只保留至少2個非NA值的行:

>>>df.dropna(thresh=2)
    name    toy    born
1  Batman Batmobile 1940-04-25
2 Catwoman  Bullwhip    NaT

從特定列中查找缺少的值:

>>>df.dropna(subset=['name', 'born'])
    name    toy    born
1  Batman Batmobile 1940-04-25

修改原數(shù)據(jù):

>>>df.dropna(inplace=True)
>>>df
   name    toy    born
1 Batman Batmobile 1940-04-25

以上。

補(bǔ)充:Pandas 之Dropna濾除缺失數(shù)據(jù)

約定:

import pandas as pd
import numpy as np
from numpy import nan as NaN

濾除缺失數(shù)據(jù)

pandas的設(shè)計目標(biāo)之一就是使得處理缺失數(shù)據(jù)的任務(wù)更加輕松些。pandas使用NaN作為缺失數(shù)據(jù)的標(biāo)記。

使用dropna使得濾除缺失數(shù)據(jù)更加得心應(yīng)手。

一、處理Series對象

通過**dropna()**濾除缺失數(shù)據(jù):

se1=pd.Series([4,NaN,8,NaN,5])
print(se1)
se1.dropna()

代碼結(jié)果:

0  4.0
1  NaN
2  8.0
3  NaN
4  5.0
dtype: float64
0  4.0
2  8.0
4  5.0
dtype: float64

通過布爾序列也能濾除:

se1[se1.notnull()]

代碼結(jié)果:

0  4.0
2  8.0
4  5.0
dtype: float64

二、處理DataFrame對象

處理DataFrame對象比較復(fù)雜,因為你可能需要丟棄所有的NaN或部分NaN。

df1=pd.DataFrame([[1,2,3],[NaN,NaN,2],[NaN,NaN,NaN],[8,8,NaN]])
df1

代碼結(jié)果:

0 1 2
0 1.0 2.0 3.0
1 NaN NaN 2.0
2 NaN NaN NaN
3 8.0 8.0 NaN

默認(rèn)濾除所有包含NaN:

df1.dropna()

代碼結(jié)果:

0 1 2
0 1.0 2.0 3.0

傳入**how=‘a(chǎn)ll'**濾除全為NaN的行:

df1.dropna(how='all')

代碼結(jié)果:

0 1 2
0 1.0 2.0 3.0
1 NaN NaN 2.0
3 8.0 8.0 NaN

傳入axis=1濾除列:

df1[3]=NaN
df1

代碼結(jié)果:

0 1 2 3
0 1.0 2.0 3.0 NaN
1 NaN NaN 2.0 NaN
2 NaN NaN NaN NaN
3 8.0 8.0 NaN NaN
df1.dropna(axis=1,how="all")

代碼結(jié)果:

0 1 2
0 1.0 2.0 3.0
1 NaN NaN 2.0
2 NaN NaN NaN
3 8.0 8.0 NaN

傳入thresh=n保留至少有n個非NaN數(shù)據(jù)的行:

df1.dropna(thresh=1)

代碼結(jié)果:

0 1 2 3
0 1.0 2.0 3.0 NaN
1 NaN NaN 2.0 NaN
3 8.0 8.0 NaN NaN
df1.dropna(thresh=3)

代碼結(jié)果:

0 1 2 3
0 1.0 2.0 3.0 NaN

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。如有錯誤或未考慮完全的地方,望不吝賜教。

您可能感興趣的文章:

相關(guān)文章

  • Python加速程序運行的方法

    Python加速程序運行的方法

    這篇文章主要介紹了Python加速程序運行的方法,文中講解非常細(xì)致,代碼幫助大家更好的理解和學(xué)習(xí),感興趣的朋友可以了解下
    2020-07-07
  • python__name__原理及用法詳解

    python__name__原理及用法詳解

    這篇文章主要介紹了python__name__原理及用法詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-11-11
  • Python捕獲全局的KeyboardInterrupt異常的方法實現(xiàn)

    Python捕獲全局的KeyboardInterrupt異常的方法實現(xiàn)

    KeyboardInterrupt異常是Python中的一個標(biāo)準(zhǔn)異常,它通常發(fā)生在用戶通過鍵盤中斷了一個正在運行的程序,本文主要介紹了Python捕獲全局的KeyboardInterrupt異常的方法實現(xiàn),感興趣的可以了解一下
    2024-08-08
  • 淺談Python 列表字典賦值的陷阱

    淺談Python 列表字典賦值的陷阱

    今天小編就為大家分享一篇淺談Python 列表字典賦值的陷阱,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-01-01
  • 解決Django中調(diào)用keras的模型出現(xiàn)的問題

    解決Django中調(diào)用keras的模型出現(xiàn)的問題

    今天小編就為大家分享一篇解決Django中調(diào)用keras的模型出現(xiàn)的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-08-08
  • Python自定義線程池實現(xiàn)方法分析

    Python自定義線程池實現(xiàn)方法分析

    這篇文章主要介紹了Python自定義線程池實現(xiàn)方法,結(jié)合實例形式較為詳細(xì)的分析了Python自定義線程池的概念、原理、實現(xiàn)方法及相關(guān)注意事項,需要的朋友可以參考下
    2018-02-02
  • Python 數(shù)據(jù)化運營之KMeans聚類分析總結(jié)

    Python 數(shù)據(jù)化運營之KMeans聚類分析總結(jié)

    這篇文章主要介紹了Python 數(shù)據(jù)化運營KMeans聚類相關(guān)的一些總結(jié),感興趣的話一起來閱讀下文吧
    2021-08-08
  • pyqt4教程之實現(xiàn)半透明的天氣預(yù)報界面示例

    pyqt4教程之實現(xiàn)半透明的天氣預(yù)報界面示例

    這篇文章主要介紹了pyqt4實現(xiàn)半透明的天氣預(yù)報界面示例,需要的朋友可以參考下
    2014-03-03
  • Python實現(xiàn)簡單的四則運算計算器

    Python實現(xiàn)簡單的四則運算計算器

    相信大家在學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu)時,就學(xué)習(xí)了簡單四則運算表達(dá)式求解的一個算法,可惜一直沒有自己動手實現(xiàn)過這個算法。最近重拾數(shù)據(jù)結(jié)構(gòu)與算法,恰巧又正在用Python比較頻繁,所幸就用它來實現(xiàn)這個算法,雖然網(wǎng)上有很多代碼,不過作為一個學(xué)習(xí)者,還是應(yīng)當(dāng)親自動手實現(xiàn)。
    2016-11-11
  • python深度優(yōu)先搜索和廣度優(yōu)先搜索

    python深度優(yōu)先搜索和廣度優(yōu)先搜索

    這篇文章主要介紹了python實現(xiàn)圖的深度優(yōu)先搜索和廣度優(yōu)先搜索相關(guān)知識點,對此有興趣的朋友學(xué)習(xí)下。
    2018-02-02

最新評論

汉中市| 汕头市| 乡宁县| 九龙县| 军事| 临高县| 福贡县| 镶黄旗| 赞皇县| 荃湾区| 哈密市| 简阳市| 宝丰县| 通山县| 滦平县| 自治县| 黑河市| 丹东市| 什邡市| 集安市| 黄浦区| 丹凤县| 平舆县| 克什克腾旗| 锡林浩特市| 贵定县| 建瓯市| 建德市| 崇州市| 边坝县| 丰原市| 汤原县| 安乡县| 天门市| 竹溪县| 彭山县| 莎车县| 喀喇沁旗| 筠连县| 滦平县| 七台河市|