麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 編程 > Python > 正文

python pandas消除空值和空格以及 Nan數據替換方法

2020-02-15 23:27:23
字體:
來源:轉載
供稿:網友

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

方法1:

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

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

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中的每個值。如果發現是空格,就返回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 pddf1 = 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替換為Noneprint data.where(data.notnull(), None)

輸出結果:

 col1 col2 col30 a  1 111 b  2 NaN col1 col2 col30 a  1 111 b  2 None

總結:

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

以上這篇python pandas消除空值和空格以及 Nan數據替換方法就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持武林站長站。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 色悠悠久久久久 | 久青草免费视频 | 国产视频第一区 | 国产日产精品一区二区三区四区 | 香蕉成人在线视频 | 久久国产中文字幕 | av在线等 | 99国语露脸久久精品国产ktv | 91免费高清视频 | 成人nv在线观看 | 精品一区二区三区中文字幕老牛 | 亚洲网站免费观看 | 男男啪羞羞视频网站 | 国产精品成人久久久久a级 欧美特黄一级高清免费的香蕉 | 日本一区二区视频在线观看 | 一级电影免费在线观看 | 久久污| 毛片视频网站 | 日韩深夜视频 | 亚洲va久久久噜噜噜久牛牛影视 | 黄视频网址 | 日本人乱人乱亲乱色视频观看 | 久久久久国产成人精品亚洲午夜 | 成人福利在线观看 | 国产成人自拍小视频 | 毛片免费视频播放 | www.国产免费 | 原来神马影院手机版免费 | 国产 一区 精品 | 有色视频在线观看 | 日韩视频1 | 国产精品久久在线观看 | 视频二区国产 | 4p一女两男做爰在线观看 | 99精品视频在线免费观看 | 免费看成人毛片 | 日本高清一级片 | 一级免费观看 | 成人三级电影网站 | chinesexxxx刘婷hd 国产91在线播放九色 | 日本欧美一区二区三区视频麻豆 |