Giá trị thiếu

Xử lý dữ liệu với pandas

Maggie Matsui

Senior Content Developer at DataCamp

Giá trị thiếu là gì?

Tên Giống Màu Cao (cm) Nặng (kg) Ngày sinh
Bella Labrador Nâu 56 25 2013-07-01
Charlie Poodle Đen 43 23 2016-09-16
Lucy Chow Chow Nâu 46 22 2014-08-25
Cooper Schnauzer Xám 49 17 2011-12-11
Max Labrador Đen 59 29 2017-01-20
Stella Chihuahua Vàng 18 2 2015-04-20
Bernie St. Bernard Trắng 77 74 2018-02-27
Xử lý dữ liệu với pandas

Giá trị thiếu là gì?

Tên Giống Màu Cao (cm) Nặng (kg) Ngày sinh
Bella Labrador Nâu 56 ? 2013-07-01
Charlie Poodle Đen 43 23 2016-09-16
Lucy Chow Chow Nâu 46 22 2014-08-25
Cooper Schnauzer Xám 49 ? 2011-12-11
Max Labrador Đen 59 29 2017-01-20
Stella Chihuahua Vàng 18 2 2015-04-20
Bernie St. Bernard Trắng 77 74 2018-02-27
Xử lý dữ liệu với pandas

Giá trị thiếu trong DataFrame pandas

print(dogs)
      name        breed  color  height_cm  weight_kg date_of_birth
0    Bella     Labrador  Brown         56        NaN    2013-07-01
1  Charlie       Poodle  Black         43       24.0    2016-09-16
2     Lucy    Chow Chow  Brown         46       24.0    2014-08-25
3   Cooper    Schnauzer   Gray         49        NaN    2011-12-11
4      Max     Labrador  Black         59       29.0    2017-01-20
5   Stella    Chihuahua    Tan         18        2.0    2015-04-20
6   Bernie  St. Bernard  White         77       74.0    2018-02-27
Xử lý dữ liệu với pandas

Phát hiện giá trị thiếu

dogs.isna()
    name  breed  color  height_cm  weight_kg  date_of_birth
0  False  False  False      False       True          False
1  False  False  False      False      False          False
2  False  False  False      False      False          False
3  False  False  False      False       True          False
4  False  False  False      False      False          False
5  False  False  False      False      False          False
6  False  False  False      False      False          False
Xử lý dữ liệu với pandas

Phát hiện có giá trị thiếu không

dogs.isna().any()
name             False
breed            False
color            False
height_cm        False
weight_kg         True
date_of_birth    False
dtype: bool
Xử lý dữ liệu với pandas

Đếm giá trị thiếu

dogs.isna().sum()
name             0
breed            0
color            0
height_cm        0
weight_kg        2
date_of_birth    0
dtype: int64
Xử lý dữ liệu với pandas

Vẽ giá trị thiếu

import matplotlib.pyplot as plt

dogs.isna().sum().plot(kind="bar") plt.show()

Biểu đồ cột đếm số giá trị thiếu ở mỗi cột của bộ dữ liệu dogs. Tất cả bằng 0, trừ weight có hai giá trị thiếu.

Xử lý dữ liệu với pandas

Loại bỏ giá trị thiếu

dogs.dropna()
      name        breed  color  height_cm  weight_kg date_of_birth
1  Charlie       Poodle  Black         43       24.0    2016-09-16
2     Lucy    Chow Chow  Brown         46       24.0    2014-08-25
4      Max     Labrador  Black         59       29.0    2017-01-20
5   Stella    Chihuahua    Tan         18        2.0    2015-04-20
6   Bernie  St. Bernard  White         77       74.0    2018-02-27
Xử lý dữ liệu với pandas

Thay thế giá trị thiếu

dogs.fillna(0)
      name        breed  color  height_cm  weight_kg date_of_birth
0    Bella     Labrador  Brown         56        0.0    2013-07-01
1  Charlie       Poodle  Black         43       24.0    2016-09-16
2     Lucy    Chow Chow  Brown         46       24.0    2014-08-25
3   Cooper    Schnauzer   Gray         49        0.0    2011-12-11
4      Max     Labrador  Black         59       29.0    2017-01-20
5   Stella    Chihuahua    Tan         18        2.0    2015-04-20
6   Bernie  St. Bernard  White         77       74.0    2018-02-27
Xử lý dữ liệu với pandas

Ayo berlatih!

Xử lý dữ liệu với pandas

Preparing Video For Download...