数据缺失处理(pandas)

Posted cgmcoding

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数据缺失处理(pandas)相关的知识,希望对你有一定的参考价值。

本文目录

1.基础概念

  1.1缺失值分类

  1.2缺失值处理方法

2.缺失观测及其类型

  2.1了解缺失信息

  2.2三种缺失符号

  2.3Nullable类型与NA符号

  2.4NA的特性

  2.5convert_dtypes方法

3.缺失数据的运算与分组

  3.1加号与乘号规则

  3.2groupby方法中的缺失值

4.填充与剔除

  4.1fillna方法

  4.2dropna方法

5.插值

  5.1线性插值

  5.2高级插值方法

  5.3interpolate中的限制参数

 

1.1缺失的分类

(1)可忽略的缺失

         1.完全随机缺失(missing completely at random, MCAR),所缺失的数据发生的概率既与已观察到的数据无关,也与未观察到的数据无关

         2.随机缺失(missing at random, MAR),假设缺失数据发生的概率与所观察到的变量是有关的,而与未观察到的数据的特征是无关的

(2)不可忽略的缺失(non-ignorable missing ,NIM) 或非随机缺失(not missing at random, NMAR, or, missing not at random, MNAR),如果不完全变量中数据的缺失既依赖于完全变量又依赖于不完全变量本身,这种缺失即为不可忽略的缺失

 

1.2缺失值的处理方法

1.2.1删除含有缺失值的个案

(1)简单删除法:它将存在缺失值的个案删除。如果数据缺失问题可以通过简单的删除小部分样本来达到目标,那么这个方法是最有效的

(2)权重法:当缺失值的类型为非完全随机缺失的时候,可以通过对完整的数据加权来减小偏差。把数据不完全的个案标记后,将完整的数据个案赋予不同的权重,个案的权重可以通过logistic或probit回归求得。

         如果解释变量中存在对权重估计起决定行因素的变量,那么这种方法可以有效减小偏差。如果解释变量和权重并不相关,它并不能减小偏差。

         对于存在多个属性缺失的情况,就需要对不同属性的缺失组合赋不同的权重,这将大大增加计算的难度,降低预测的准确性,这时权重法并不理想

1.2.2缺失值插补

(1)均值插补:属于单值插补。数据的属性分为定距型和非定距型。如果缺失值是定距型的,就以该属性存在值的平均值来插补缺失的值;如果缺失值是非定距型的,就用该属性的众数来补齐缺失的值

(2)利用同类均值插补:单值插补。用层次聚类模型预测缺失变量的类型,再以该类型的均值插补。假设为信息完全的变量,为存在缺失值的变量,那么首先对或其子集行聚类,然后按缺失个案所属类来插补不同类的均值。

         如果在以后统计分析中还需以引入的解释变量和做分析,那么这种插补方法将在模型中引入自相关,给分析造成障碍

(3)极大似然估计(max likelihood,ml):在缺失类型为随机缺失的条件下,假设模型对于完整的样本是正确的,那么通过观测数据的边际分布可以对未知参数进行极大似然估计(Little and Rubin)。

         这种方法也被称为忽略缺失值的极大似然估计,对于极大似然的参数估计实际中常采用的计算方法是期望值最大化(Expectation Maximization,EM)。该方法比删除个案和单值插补更有吸引力,前提是适用于大样本,

         有效样本的数量足够以保证ML估计值是渐近无偏的并服从正态分布。这种方法可能会陷入局部极值,收敛速度也不是很快,并且计算很复杂

(4)多重插补(Multiple Imputation,MI)

 

以上是关于数据缺失处理(pandas)的主要内容,如果未能解决你的问题,请参考以下文章

Pandas高级教程之:处理缺失数据

Pandas | 17 缺失数据处理

数据缺失处理(pandas)

pandas 处理缺失值[dropna、drop、fillna]

pandas数据缺失处理

pandas数据缺失处理