📜  python fillna with mode - Python (1)

📅  最后修改于: 2023-12-03 15:18:55.262000             🧑  作者: Mango

Python数据清洗 - 使用mode填充缺失值(fillna with mode)

在数据清洗过程中,经常会遇到缺失值的情况。为了避免在数据分析和建模中对数据的影响,我们需要对缺失值做出处理。一种常用的方法是使用频率最高的值填充缺失值,也就是mode(众数)。

本文将介绍使用Python中的pandas库,如何利用mode填充缺失值。

1. 导入库及准备数据

首先,我们需要导入需要用到的库,本文主要用到的是pandas和numpy库。

import pandas as pd
import numpy as np

接着,我们需要准备一份数据来进行填充缺失值的演示。这里我们使用一个包含了空值的数据集(csv格式),通过pandas的read_csv读取csv文件,将其转化为一个DataFrame对象:

data = pd.read_csv('data.csv')
print(data)

运行代码得到输出:

    Name   Age   Sex
0  Alice  22.0     F
1    Bob   NaN  None
2  Cathy  21.0     F
3    Dan  24.0     M
4  Ellie   NaN     F
5  Frank  25.0     M

可以看到,数据集中有两个缺失值,一个在Age列,一个在Sex列。

2. mode填充缺失值

使用pandas的fillna方法,我们可以使用mode填充缺失值。fillna方法可以接受使用何种方法进行填充。下面我们将演示使用mode填充缺失值。

mode_value = data['Age'].mode()[0]
data['Age'].fillna(mode_value, inplace=True)

mode_value = data['Sex'].mode()[0]
data['Sex'].fillna(mode_value, inplace=True)

print(data)

输出结果:

    Name   Age Sex
0  Alice  22.0   F
1    Bob  21.0   F
2  Cathy  21.0   F
3    Dan  24.0   M
4  Ellie  21.0   F
5  Frank  25.0   M

缺失值已经被用mode值填充了。

3. 总结

本文介绍了如何使用Python中的pandas库填充缺失值。对于缺失的数值数据,可以使用频率最高的值填充,也就是mode值。可以使用fillna方法来进行填充。