panads缺失值

缺失值

1. panads中默认缺失值有三种:np.nan (Not a Number) 、 None 和 pd.NaT

  • 通过isnull(),notnull(),isna()判断

2. 自定义缺失值

  • 通过isin(values)判断

 

判断默认缺失值

可通过函数isnull(),notnull(),isna()判断

以下数据类型变量名=df,例子

1. isnull()

  •  df.isnull() --判断是否为null,是为True,否为False

2. notnull()

  • df.notnull() --判断是否为null,是为False,否为True,与isnull()效果相反

 

3. isna()

  • df.isna() --效果与isnull相同,与notnull相反

4. 此外可以与numpy中的any和all函数一起使用

  • numpy.any(参数) --参数中任何一个元素为True,输出=True
  • numpy.all(参数) --参数中全部为True,输出=True
  • numpy.any(df.notnull)  --输出True
  • numpy.all(df.notnull)  --输出False

 

判断自定义缺失值

isin([values])

  • df.isin([' ']) --以列表方式传入空值

 ----》

 

 

删除缺失值

df.dropna(axis=0, how="any", thresh=None, subset=None, inplace=False)

  • axis:默认为0,即删除有空值的行,将axis参数修改为1,即删除有空值的列
  • how:默认为any,只要一行(或列)数据中有空值就会删除该行(或列),改为all,则条件需要全部为空值
  • thresh: 整数,如df.dropna(thresh=2),至少要有2个非空,不然删除
  • subset: 删除空值时,只判断subset指定的列(或行)的子集,如df.dropna(subset = ['0','1'])
  • inplace: 默认为False,返回原数据的一个副本。将inplace参数修改为True,则会修改数据本身

 

填充缺失值

df.fillna(value=None, method=None, axis=None, inplace=False, limit=None)

  • value: 表示填充的值,可以是一个指定值,也可以是字典
  • method: 填充的方式,默认为None。有 ffill,pad,bfill,backfill 四种填充方式可以使用
  • axis: 通常配合method参数使用,axis=0表示按行,axis=1表示按列
posted @ 2022-01-23 11:43  SiNanhong  阅读(78)  评论(0编辑  收藏  举报