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

python pandas消除空值和空格以及 Nan數(shù)據(jù)替換方法

 更新時間:2018年10月30日 09:10:18   作者:alanhu1024  
今天小編就為大家分享一篇python pandas消除空值和空格以及 Nan數(shù)據(jù)替換方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

在人工采集數(shù)據(jù)時,經(jīng)常有可能把空值和空格混在一起,一般也注意不到在本來為空的單元格里加入了空格。這就給做數(shù)據(jù)處理的人帶來了麻煩,因為空值和空格都是代表的無數(shù)據(jù),而pandas中Series的方法notnull()會把有空格的數(shù)據(jù)也納入進(jìn)來,這樣就不能完整地得到我們想要的數(shù)據(jù)了,這里給出一個簡單的方法處理該問題。

方法1:

既然我們認(rèn)為空值和空格都代表無數(shù)據(jù),那么可以先得到這兩種情況下的布爾數(shù)組。

這里,我們的DataFrame類型的數(shù)據(jù)集為df,其中有一個變量VIN,那么取得空值和空格的布爾數(shù)組為NONE_VIN。然后通過該布爾數(shù)組,就能得到我們要的數(shù)據(jù)了

NONE_VIN = (df["VIN"].isnull()) | (df["VIN"].apply(lambda x: str(x).isspace()))
df_null = df[NONE_VIN]
df_not_null = df[~NONE_VIN]

方法2:

直接使用Series的.apply方法來修改變量VIN中的每個值。如果發(fā)現(xiàn)是空格,就返回Nan,否則就返回原值。

df["VIN"]=df["VIN"].apply(lambda x: np.NaN if str(x).isspace() else x)
df_null = df[df["VIN"].isnull()]
df_not_null = df[df["VIN"].notnull()]

將dataframe中的NaN替換成希望的值

import pandas as pd
df1 = pd.DataFrame([{'col1':'a', 'col2':1}, {'col1':'b', 'col2':2}])
df2 = pd.DataFrame([{'col1':'a', 'col3':11}, {'col1':'c', 'col3':33}])

data = pd.merge(left=df1, right=df2, how='left', left_on='col1', right_on='col1')
print data
# 將NaN替換為None
print data.where(data.notnull(), None)

輸出結(jié)果:

 col1 col2 col3
0 a  1 11
1 b  2 NaN
 col1 col2 col3
0 a  1 11
1 b  2 None

總結(jié):

方法1的思路就是直接判定是否為空格,把空格納入到選擇中來。方法2的思路是先把空格轉(zhuǎn)換為NaN,然后正常使用.isnull()或.notnull()來得到我們想要的數(shù)據(jù)。

以上這篇python pandas消除空值和空格以及 Nan數(shù)據(jù)替換方法就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • python pygame實現(xiàn)2048游戲

    python pygame實現(xiàn)2048游戲

    這篇文章主要為大家詳細(xì)介紹了python pygame實現(xiàn)2048游戲,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-11-11
  • 使用python分析git log日志示例

    使用python分析git log日志示例

    這篇文章主要介紹了使用python分析git log日志示例,需要的朋友可以參考下
    2014-02-02
  • Python使用reportlab模塊生成PDF格式的文檔

    Python使用reportlab模塊生成PDF格式的文檔

    今天小編就為大家分享一篇關(guān)于Python使用reportlab模塊生成PDF格式的文檔,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2019-03-03
  • Python的對象傳遞與Copy函數(shù)使用詳解

    Python的對象傳遞與Copy函數(shù)使用詳解

    今天小編就為大家分享一篇Python的對象傳遞與Copy函數(shù)使用詳解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-12-12
  • Python、Javascript中的閉包比較

    Python、Javascript中的閉包比較

    這篇文章主要介紹了Python、Javascript中的閉包比較,本文分別講解了Python和Javascript中的閉包,分對它們的不同做了一個簡單的比較,需要的朋友可以參考下
    2015-02-02
  • Python發(fā)展簡史 Python來歷

    Python發(fā)展簡史 Python來歷

    在本文里我們給大家分享了關(guān)于Python的來歷以及Python相關(guān)的發(fā)展內(nèi)容,有興趣的讀者們閱讀下。
    2019-05-05
  • Django實現(xiàn)文件上傳下載

    Django實現(xiàn)文件上傳下載

    這篇文章主要為大家詳細(xì)介紹了Django實現(xiàn)文件上傳下載,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-10-10
  • python GUI庫圖形界面開發(fā)之PyQt5單選按鈕控件QRadioButton詳細(xì)使用方法與實例

    python GUI庫圖形界面開發(fā)之PyQt5單選按鈕控件QRadioButton詳細(xì)使用方法與實例

    這篇文章主要介紹了python GUI庫圖形界面開發(fā)之PyQt5單選按鈕控件QRadioButton詳細(xì)使用方法與實例,需要的朋友可以參考下
    2020-02-02
  • python正則表達(dá)式實例代碼

    python正則表達(dá)式實例代碼

    這篇文章主要介紹了python正則表達(dá)式的一些實例代碼,方便學(xué)習(xí)python的朋友,需要的朋友可以參考下
    2020-03-03
  • python實現(xiàn)K折交叉驗證

    python實現(xiàn)K折交叉驗證

    這篇文章主要為大家詳細(xì)介紹了python實現(xiàn)K折交叉驗證,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-04-04

最新評論