pandas處理缺失資料
《Python for Data Analysis》
NA處理方法
方法 | 說明 |
---|---|
dropna | 根據各標籤的值中是否存在缺失資料對軸標籤進行過濾,可通過閾值調節對缺失值得容忍度 |
fillna | 用指定值或插值方法(如ffill和bfill)填充缺失資料 |
isnull | 返回一個含有布林值的物件,這些布林值表示哪些值是缺失值NA,該物件的型別與源型別一樣 |
notnull | isnull的否定式 |
濾除缺失資料(dropna)
Series
In [1]: import pandas as pd
In [2 ]: from pandas import DataFrame, Series
In [3]: import numpy as np
In [4]: from numpy import nan as NA
In [5]: data = Series([1, NA, 3.5, NA, 7])
In [6]: data.dropna()
Out[6]:
0 1.0
2 3.5
4 7.0
dtype: float64
In [7]: data[data.notnull()]
Out[7]:
0 1.0
2 3.5
4 7.0
dtype: float64
DataFrame
DataFrame中dropna預設丟棄任何含有缺失值的行。
傳入how=’all’將只丟棄全為NA的行
如果想丟棄列,只需傳入axis=1
填充缺失資料(fillna)!!
- 常數呼叫
df.fillna(0)
- 字典呼叫,對不同的列填充不同的值
df.fillna({1:0.5, 3:-1})
- fillna預設會返回新物件!!,就地修改:
_ = df.fillna(0, inplace=True)
- 對
reindex
有效的插值方法也可用於fillna
替換值
利用fillna
方法填充缺失資料可以看做值替換的一種特殊情況。而replace
則提供了一種實現該功能的更簡單、更靈活的方式。
In [11]: data = Series([1.,-999.,2.,-999.,-1000.,3.])
In [12]: data
Out[12]:
0 1.0
1 -999.0
2 2.0
3 -999.0
4 -1000.0
5 3.0
dtype: float64
In [13]: data.replace(-999, np.nan)
Out[13]:
0 1.0
1 NaN
2 2.0
3 NaN
4 -1000.0
5 3.0
dtype: float64
In [14]: data.replace([-999,-1000], np.nan)
Out[14]:
0 1.0
1 NaN
2 2.0
3 NaN
4 NaN
5 3.0
dtype: float64
In [15]: data.replace([-999,-1000], [np.nan,0])
Out[15]:
0 1.0
1 NaN
2 2.0
3 NaN
4 0.0
5 3.0
dtype: float64
In [16]: data.replace({-999 : np.nan, -1000 : 0})
Out[16]:
0 1.0
1 NaN
2 2.0
3 NaN
4 0.0
5 3.0
dtype: float64
相關推薦
pandas處理缺失資料
《Python for Data Analysis》 NA處理方法 方法 說明 dropna 根據各標籤的值中是否存在缺失資料對軸標籤進行過濾,可通過閾值調節
pandas知識點(處理缺失資料)
pandas使用浮點值NaN表示浮點和非浮點陣列中的缺失資料: In [14]: string_data = Series(['aardvark','artichoke',np.nan,'avocado']) In [15]: string_data Out[15]: 0 aar
python資料分析pandas包入門學習(四)處理缺失資料
本文參考《利用Python進行資料分析》的第五章 pandas入門 4 處理缺失資料 缺失資料(missing data)在大部分資料分析應用中都很常見。Pandas的設計目標之一就是讓缺失資料的處理任務儘量輕鬆。例如,pandas物件上的所有描述統計都排除了缺失資料
Python中缺失值分類及Pandas中缺失資料處理函式
一、Python中缺失值分類 Python中有三種缺失值(空值): 形式 含義 None Python內建的None值,如建立一個空的列表list=[] NA 在pandas中,將缺失值表示為NA,表示不可用not available,主
Pandas處理缺失數據
HR dataframe AC print 改變 進行 post 參數 解釋 利用pandas.DataFrame.dropna處理含有缺失值的數據 1.使用形式: DataFrame.dropna(axis=0, how=‘any‘, thresh=None, subse
[Pandas]利用Pandas處理excel資料
Python 處理excel的第三包有很多,比如XlsxWriter、xlrd&xlwt、OpenPyXL、Microsoft Excel API等,最後綜合考慮選用了Pandas。 Pandas 是基於NumPy 的一種工具,該工具是為了解決資料分析任務而建立的。Pandas 納入了大量
Python資料處理之(十 三)Pandas 處理丟失資料
建立含 NaN 的矩陣 有時候我們匯入或處理資料, 會產生一些空的或者是NaN資料,如何刪除或者是填補這些 NaN 資料就是我們今天所要提到的內容. 建立了一個6X4的矩陣資料並且把兩個位置置為空. >>> dates=pd.date_range('20181
Python利用pandas處理Excel資料的應用
Python利用pandas處理Excel資料的應用 最近迷上了高效處理資料的pandas,其實這個是用來做資料分析的,如果你是做大資料分析和測試的,那麼這個是非常的有用的!!但是其實我們平時在做自動化測試的時候,如
【Pandas】Pandas處理本文資料
目錄 連線 方法摘要 使用文字資料 Series和Index配備了一組字串處理方法,可以輕鬆地對陣列的每個元素進行操作。也許最重要的是,這
pandas 處理缺失值[dropna、drop、fillna]
面對缺失值三種處理方法: option 1: 去掉含有缺失值的樣本(行) option 2:將含有缺失值的列(特徵向量)去掉 option 3:將缺失值用某些值填充(0,平均值,中值等) 對於dro
pandas 處理文字資料
import pandas as pd import numpy as np 常規的字串操作 s = pd.Series(['A',"B","C","AaBa","Baca",np.nan,'dog','cat']) s 0 A 1 B 2 C 3 AaB
利用Python進行資料分析_Pandas_處理缺失資料
申明:本系列文章是自己在學習《利用Python進行資料分析》這本書的過程中,為了方便後期自己鞏固知識而整理。 1 讀取excel資料 import pandas as pd import numpy as np file = 'D:\example.xls' df = pd.DataFr
python使用pandas處理大資料節省記憶體技巧
一般來說,用pandas處理小於100兆的資料,效能不是問題。當用pandas來處理100兆至幾個G的資料時,將會比較耗時,同時會導致程式因記憶體不足而執行失敗。 當然,像Spark這類的工具能夠勝任處理100G至幾個T的大資料集,但要想充分發揮這些工具的優
pandas處理csv資料基本用法
# -*- coding: utf-8 -*- import pandas #讀csv檔案 data = pandas.read_csv('test.csv') # print data #返回前n行 first_rows = data.head(n=5) # prin
pandas刪除缺失資料(pd.dropna()方法)
1.建立帶有缺失值的資料庫:import pandas as pd import numpy as np df = pd.DataFrame(np.random.randn(5, 3), index = list('abcde'), columns = ['one', 't
用pandas處理缺失值補全及DictVectorizer特徵轉換
下面介紹的是用pands讀取泰坦尼克遇難船員的資料,然後挑選特徵,補全缺失值,特徵轉換。 1.pands讀取資料 titanic=pd.read_csv('./titanic.txt') 其資料形式如下: |row_num |pclass|survived|n
pandas(二)pandas處理丟失資料
Logout2-pandas_missing_values Last Checkpoint: 06/13/2018 (unsaved changes)Python 3 TrustedCodeMarkdo
如何利用pandas處理大資料
翻譯自這篇文章 當我們需要處理大資料時,如果不對資料做任何處理,可能會帶來記憶體佔用過大和執行過慢的風險。 當然對於處理大資料集,類似spark之類的專業處理工具是大家的首選,但是pandas優秀的特性和簡單明瞭的語法能極大提升資料分析的效率,因此我需要考慮
python pandas處理缺失值
缺失值:python中顯示為NaN,python用np.nan,None表示在簡單的運算+-*/中,有缺失值的畫,運算結果在相應的位置上也是缺失值在描述性統計sum,mean,min.max等中,NaN都是作為0進行運算操作:判斷返回一個含有布林值的物件,True表示是缺失值
pandas處理excel資料經驗
1.excel檔名,或者工作簿中都不能含有中文字元,一旦含有,載入時就會報IO錯誤。列名似乎可以支援中文字元。 解決方案,網友遇到類似的問題,“csv檔案中有大量中文,怎樣在pandas裡面顯示?” 主要是解碼編碼的問題。 方案一: pd.read_c