pandas:欠落値処理
pandas:欠落値処理前言 一、isnull() 二、notnull() 三、dropna() 四、fillna() 前言
私たちがデータを処理する時、いつも数値の欠落の問題に出会って、pandasは欠落値を処理する方面でとても全面的な方法を提供して、主に含みます:isnull()--欠落値を探し出します;notnull()-欠落していない値を見つけます.dropna()——欠落値を取り除く;Fillna()-欠落した値を入力します.具体的な使い方は下を見てください.
ヒント:以下はこの文章の本文の内容で、以下のケースは参考にすることができます
一、isnull()
isnull()は、欠落した値の位置を特定し、ブール型のマスクタグ欠落値を返します.次の例です.
ここでは、DataFrameを作成する際の制御にかかわらずnpが使用されていることがわかります.nanもNoneも、作成するとNaNになります.
二、notnull()
notnull()はisnull()とは正反対で、空でない値を見つけてブール値でマークします.次に例を示します.
三、dropna()
dropna()は文字通り、欠落値を失うことを意味する.
DataFrame.dropna(axis=0, how=‘any’, thresh=None, subset=None, inplace=False)
パラメータ:axis:デフォルトは0で、行を削除するか列を削除するかを表し、「index」と「columns」でhow:{‘any’,‘all’}を表し、デフォルトは‘any’;anyはその行(列)に空の値があれば行全体(列)を削除することを表し、allは行全体(列)に空の値が現れてこそ行全体(列)を削除することを表すthresh:非空の値がthreshより小さい場合subsetを削除することを表す:リストタイプ、どの列に空の値があって行または列inplaceを削除するかを表す:他の関数のinplaceと同様に、元のDataFrameを上書きするかどうかを表す
次に例を示します.
四、fillna()
Fillna()の役割は欠落値DataFrameを埋めることである.fillna(value=None, method=None, axis=None, inplace=False, limit=None, downcast=None)
パラメータ: value:DataFrameを埋める値 を設定する. method:デフォルトはNone;DataFrameを埋める方法としては、「backfill」、「bfill」、「pad」、「ffill」の4種類があり、「backfill」と「bfill」は前の値で空席値を埋め、「pad」と「ffill」は後の値で空席値 を埋めます. axis:欠落値に沿った軸を充填し、前述のaxis設定方法と同様に inplace:元のDataFrameを置き換えるかどうかは、上記の設定方法と同様 limit:置換値の設定数制限 downcast:ダウン互換変換タイプを表し、 は一般的ではありません.
次に例を示します.
私たちがデータを処理する時、いつも数値の欠落の問題に出会って、pandasは欠落値を処理する方面でとても全面的な方法を提供して、主に含みます:isnull()--欠落値を探し出します;notnull()-欠落していない値を見つけます.dropna()——欠落値を取り除く;Fillna()-欠落した値を入力します.具体的な使い方は下を見てください.
ヒント:以下はこの文章の本文の内容で、以下のケースは参考にすることができます
一、isnull()
isnull()は、欠落した値の位置を特定し、ブール型のマスクタグ欠落値を返します.次の例です.
import pandas as pd
import numpy as np
data = pd.DataFrame({
'name':['Verne Raymond',np.nan,'Patrick George','Saxon MacArthur'],'age':[18,np.nan,21,None]})
data
name age
0 Verne Raymond 18.0
1 NaN NaN
2 Patrick George 21.0
3 Saxon MacArthur NaN
ここでは、DataFrameを作成する際の制御にかかわらずnpが使用されていることがわかります.nanもNoneも、作成するとNaNになります.
data.isnull()
name age
0 False False
1 True True
2 False False
3 False True
二、notnull()
notnull()はisnull()とは正反対で、空でない値を見つけてブール値でマークします.次に例を示します.
data.notnull()
name age
0 True True
1 False False
2 True True
3 True False
三、dropna()
dropna()は文字通り、欠落値を失うことを意味する.
DataFrame.dropna(axis=0, how=‘any’, thresh=None, subset=None, inplace=False)
パラメータ:axis:デフォルトは0で、行を削除するか列を削除するかを表し、「index」と「columns」でhow:{‘any’,‘all’}を表し、デフォルトは‘any’;anyはその行(列)に空の値があれば行全体(列)を削除することを表し、allは行全体(列)に空の値が現れてこそ行全体(列)を削除することを表すthresh:非空の値がthreshより小さい場合subsetを削除することを表す:リストタイプ、どの列に空の値があって行または列inplaceを削除するかを表す:他の関数のinplaceと同様に、元のDataFrameを上書きするかどうかを表す
次に例を示します.
data.dropna(axis=1,thresh=3)
name
0 Verne Raymond
1 NaN
2 Patrick George
3 Saxon MacArthur
data.dropna(axis=0,how='all')
name age
0 Verne Raymond 18.0
2 Patrick George 21.0
3 Saxon MacArthur NaN
data.dropna(subset = ['name'])
name age
0 Verne Raymond 18.0
2 Patrick George 21.0
3 Saxon MacArthur NaN
四、fillna()
Fillna()の役割は欠落値DataFrameを埋めることである.fillna(value=None, method=None, axis=None, inplace=False, limit=None, downcast=None)
パラメータ:
次に例を示します.
data.fillna(0)
name age
0 Verne Raymond 18.0
1 0 0.0
2 Patrick George 21.0
3 Saxon MacArthur 0.0
data.fillna(method='ffill')
name age
0 Verne Raymond 18.0
1 Verne Raymond 18.0
2 Patrick George 21.0
3 Saxon MacArthur 21.0