Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Python

Cách tìm độ lệch chuẩn của cột cụ thể trong DataFrame Pandas Python

Độ lệch chuẩn cho biết các giá trị trong tập dữ liệu phân bố như thế nào. Chúng cũng cho biết các giá trị trong tập dữ liệu cách trung bình cộng của các cột trong tập dữ liệu bao nhiêu.

Đôi khi cần lấy độ lệch chuẩn của một cột cụ thể mang tính số. Đây là lúc hàm std() có thể dùng. Cột cần tính độ lệch chuẩn có thể được truy xuất (indexed) vào DataFrame, và hàm std được gọi trên cột này bằng toán tử chấm.

Chỉ số cột cũng có thể truyền để tìm độ lệch chuẩn.

Hãy xem minh họa:

Ví dụ

import pandas as pd

my_data = {
    'Name': pd.Series(['Tom', 'Jane', 'Vin', 'Eve', 'Will']),
    'Age': pd.Series([45, 67, 89, 12, 23]),
    'value': pd.Series([8.79, 23.24, 31.98, 78.56, 90.20])
}

print("DataFrame là:")
my_df = pd.DataFrame(my_data)
print(my_df)

print("Độ lệch chuẩn cột 'Age':")
print(my_df['Age'].std())

print("Độ lệch chuẩn cột 'value':")
print(my_df['value'].std())

Đầu ra

DataFrame là:
    Name  Age  value
0   Tom   45   8.79
1  Jane   67  23.24
2   Vin   89  31.98
3   Eve   12  78.56
4  Will   23  90.20

Độ lệch chuẩn cột 'Age': 31.499206339207976
Độ lệch chuẩn cột 'value': 35.747101700697364

Giải thích

  • Nhập thư viện cần thiết, đặt bí danh để dễ dùng.
  • Tạo dictionary của Series bao gồm key và value, value là cấu trúc Series.
  • Dictionary này truyền làm tham số cho hàm DataFrame trong pandas.
  • In DataFrame ra console.
  • Muốn tính độ lệch chuẩn cột cụ thể chứa giá trị số.
  • Gọi hàm std trên DataFrame bằng cách chỉ định tên cột, dùng toán tử chấm.
  • Độ lệch chuẩn cột số in ra console.

Lưu ý: std() mặc định dùng độ lệch chuẩn mẫu (ddof=1 - chia cho N-1). Dùng std(ddof=0) cho độ lệch chuẩn tổng thể (chia cho N). Có thể tính std cho toàn bộ DataFrame số: df.select_dtypes(include=[np.number]).std().