Xử lý giá trị thiếu trong Series và DataFrame với Python

Try Proseoai — it's free
AI SEO Assistant
SEO Link Building
SEO Writing

Xử lý giá trị thiếu trong Series và DataFrame với Python

Mục lục

  1. Giới thiệu về Series
  2. Cách xử lý giá trị thiếu trong Series
  3. Import thư viện và tạo Series
  4. Cách kiểm tra giá trị null
    • 4.1. Sử dụng phương thức isnull()
    • 4.2. Sử dụng phương thức notnull()
  5. Tính tổng các giá trị null và not null
  6. Xử lý giá trị thiếu trong DataFrame
  7. Import dữ liệu và kiểm tra thông tin
  8. Xử lý giá trị null trong cột 'Age'
  9. Thay thế giá trị null trong cột 'Sex'
  10. Kết luận

1. Giới thiệu về Series

Series là một mảng một chiều trong pandas, có khả năng lưu trữ dữ liệu của bất kỳ kiểu dữ liệu nào. Các phần tử trong Series được gán nhãn bởi index.

2. Cách xử lý giá trị thiếu trong Series

Để xử lý giá trị thiếu trong Series, chúng ta có thể sử dụng các phương thức isnull() và notnull(). Cả hai phương thức này đều trả về giá trị boolean, true nếu giá trị là null và false nếu giá trị không phải null.

3. Import thư viện và tạo Series

Trước khi bắt đầu xử lý giá trị thiếu trong Series, chúng ta cần import thư viện pandas và tạo một đối tượng Series. Ví dụ:

import pandas as pd

# Tạo một Series với các giá trị số nguyên
series_one = pd.Series([1, 2, 3, 4, None, 6, 7, 8])

# In Series
print(series_one)

Output:

0    1
1    2
2    3
3    4
4    None
5    6
6    7
7    8
dtype: float64

Trong ví dụ trên, chúng ta đã tạo một Series với các giá trị số nguyên, và giá trị thứ 5 là None, tức là giá trị thiếu.

4. Cách kiểm tra giá trị null

Để kiểm tra xem một giá trị có phải là null hay không, chúng ta có thể sử dụng phương thức isnull(). Ví dụ:

# Kiểm tra các giá trị null trong Series
null_values = series_one.isnull()

# In kết quả
print(null_values)

Output:

0    False
1    False
2    False
3    False
4     True
5    False
6    False
7    False
dtype: bool

Trong ví dụ trên, chúng ta đã sử dụng phương thức isnull() để kiểm tra các giá trị null trong Series. Kết quả trả về là một Series chứa các giá trị boolean, true nếu giá trị tương ứng là null và false nếu không phải.

4.1. Sử dụng phương thức isnull()

Phương thức isnull() trả về một Series chứa các giá trị boolean, true nếu giá trị tương ứng là null và false nếu không phải.

# Sử dụng phương thức isnull()
null_values = series_one.isnull()

# In kết quả
print(null_values)

Output:

0    False
1    False
2    False
3    False
4     True
5    False
6    False
7    False
dtype: bool

4.2. Sử dụng phương thức notnull()

Phương thức notnull() trả về một Series chứa các giá trị boolean, true nếu giá trị tương ứng không phải là null và false nếu là null.

# Sử dụng phương thức notnull()
not_null_values = series_one.notnull()

# In kết quả
print(not_null_values)

Output:

0     True
1     True
2     True
3     True
4    False
5     True
6     True
7     True
dtype: bool

5. Tính tổng các giá trị null và not null

Để tính tổng các giá trị null và not null trong Series, chúng ta có thể sử dụng phương thức sum().

# Tính tổng các giá trị null
sum_null_values = series_one.isnull().sum()

# Tính tổng các giá trị not null
sum_not_null_values = series_one.notnull().sum()

# In kết quả
print("Số lượng giá trị null:", sum_null_values)
print("Số lượng giá trị not null:", sum_not_null_values)

Output:

Số lượng giá trị null: 1
Số lượng giá trị not null: 7

Trong ví dụ trên, chúng ta tính tổng số lượng giá trị null và not null trong Series.

6. Xử lý giá trị thiếu trong DataFrame

Để xử lý giá trị thiếu trong DataFrame, chúng ta có thể sử dụng các phương pháp như fillna(), dropna(), interpolate(),...

7. Import dữ liệu và kiểm tra thông tin

Trước khi xử lý giá trị thiếu trong DataFrame, chúng ta cần import dữ liệu và kiểm tra thông tin về DataFrame.

import pandas as pd

# Import dữ liệu
df = pd.read_csv("data.csv")

# Kiểm tra thông tin về DataFrame
print(df.info())

Output:

<class 'pandas.core.frame.DataFrame'>
RangeIndex: 891 entries, 0 to 890
Data columns (total 3 columns):
Sex         891 non-null object
Age         714 non-null float64
Embarked    889 non-null object
dtypes: float64(1), object(2)
memory usage: 21.0+ KB
None

Trong ví dụ trên, chúng ta đã import dữ liệu từ tệp csv và sử dụng phương thức info() để kiểm tra thông tin về DataFrame. Chúng ta có 3 cột: 'Sex', 'Age' và 'Embarked'. Cột 'Age' chứa giá trị thiếu.

8. Xử lý giá trị null trong cột 'Age'

Để xử lý giá trị null trong cột 'Age', chúng ta có thể sử dụng phương thức fillna() để điền giá trị thiếu bằng một giá trị khác.

# Xử lý giá trị null trong cột 'Age'
df['Age'] = df['Age'].fillna(df['Age'].mean())

# Kiểm tra kết quả
print(df.info())

Output:

<class 'pandas.core.frame.DataFrame'>
RangeIndex: 891 entries, 0 to 890
Data columns (total 3 columns):
Sex         891 non-null object
Age         891 non-null float64
Embarked    889 non-null object
dtypes: float64(1), object(2)
memory usage: 21.0+ KB
None

Trong ví dụ trên, chúng ta sử dụng phương thức fillna() để điền giá trị trung bình của cột 'Age' vào các giá trị null.

9. Thay thế giá trị null trong cột 'Sex'

Để thay thế giá trị null trong cột 'Sex', chúng ta có thể sử dụng phương thức fillna() hoặc replace() để thay thế giá trị thiếu bằng giá trị khác.

# Thay thế giá trị null trong cột 'Sex'
df['Sex'] = df['Sex'].fillna('Unknown')

# Kiểm tra kết quả
print(df.info())

Output:

<class 'pandas.core.frame.DataFrame'>
RangeIndex: 891 entries, 0 to 890
Data columns (total 3 columns):
Sex         891 non-null object
Age         891 non-null float64
Embarked    889 non-null object
dtypes: float64(1), object(2)
memory usage: 21.0+ KB
None

Trong ví dụ trên, chúng ta sử dụng phương thức fillna() để thay thế giá trị null trong cột 'Sex' bằng 'Unknown'.

10. Kết luận

Trong bài viết này, chúng ta đã tìm hiểu cách xử lý giá trị thiếu trong Series và DataFrame bằng cách sử dụng các phương thức như isnull(), notnull(), fillna(), dropna(), interpolate(),... Điều này giúp chúng ta xử lý hiệu quả dữ liệu thiếu trong phân tích dữ liệu và huấn luyện mô hình máy học.

Are you spending too much time on seo writing?

SEO Course
1M+
SEO Link Building
5M+
SEO Writing
800K+
WHY YOU SHOULD CHOOSE Proseoai

Proseoai has the world's largest selection of seo courses for you to learn. Each seo course has tons of seo writing for you to choose from, so you can choose Proseoai for your seo work!

Browse More Content