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

Tính độ lệch trung bình tuyệt đối (MAD) hàng và cột DataFrame Python

Giả sử bạn muốn tính Mean Absolute Deviation (MAD) cho từng cột và từng hàng của DataFrame.

Giải pháp

  • Tạo DataFrame.
  • MAD theo cột (mặc định): df.mad().
  • MAD theo hàng: df.mad(axis=1).

Công thức MAD: Trung bình của |x_i - mean(x)|.

Mã ví dụ

import pandas as pd

data = {
    "Column1": [6, 5.3, 5.9, 7.8, 7.6, 7.45, 7.75],
    "Column2": [7, 7.1, 7.2, 6, 6.1, 6.3, 5.1]
}
df = pd.DataFrame(data)

print("DataFrame:\n", df)
print("\nMAD theo cột:\n", df.mad())
print("\nMAD theo hàng:\n", df.mad(axis=1))

Kết quả

DataFrame:
   Column1  Column2
0     6.00      7.0
1     5.30      7.1
2     5.90      7.2
3     7.80      6.0
4     7.60      6.1
5     7.45      6.3
6     7.75      5.1

MAD theo cột:
Column1    0.938776
Column2    0.600000
dtype: float64

MAD theo hàng:
0    0.500
1    0.900
2    0.650
3    0.900
4    0.750
5    0.575
6    1.325
dtype: float64

Giải thích:

  • Cột Column1 có MAD lớn hơn (0.94) → dữ liệu phân tán hơn so với Column2 (0.60).
  • Hàng 6 có MAD lớn nhất (1.325) do chênh lệch lớn giữa 7.75 và 5.1.
  • MAD robust hơn standard deviation đối với outlier.