สมมติว่าคุณมี DataFrame และต้องการคำนวณ Mean Absolute Deviation (MAD) แยกตามคอลัมน์และแถว
วิธีแก้ปัญหา
- สร้าง DataFrame
- ใช้
df.mad()คำนวณ MAD ของคอลัมน์ (default axis=0) - ใช้
df.mad(axis=1)คำนวณ MAD ของแถว
ตัวอย่างโค้ด
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 ของคอลัมน์ (axis=0):")
print(df.mad())
print("\nMAD ของแถว (axis=1):")
print(df.mad(axis=1))
ผลลัพธ์
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 ของคอลัมน์ (axis=0):
Column1 0.938776
Column2 0.600000
dtype: float64
MAD ของแถว (axis=1):
0 0.500
1 0.900
2 0.650
3 0.900
4 0.750
5 0.575
6 1.325
dtype: float64
คำอธิบาย:
- MAD (Mean Absolute Deviation): ค่าเฉลี่ยของค่าความคลาดเคลื่อนสัมบูรณ์จากค่าเฉลี่ย สูตร: mean(|x - mean(x)|)
axis=0(default): คำนวณต่อคอลัมน์ (column-wise)axis=1: คำนวณต่อแถว (row-wise)- MAD ทนทานต่อ outliers มากกว่าความแปรปรวน (variance) หรือสถิติที่ใช้กำลังสอง