การประยุกต์ใช้การทดสอบแบบไม่อิงพารามิเตอร์ในการวิเคราะห์เชิงทดลอง

การออกแบบการทดลองด้วย Python

James Chapman

Curriculum Manager, DataCamp

เมื่อใดควรใช้การทดสอบแบบไม่อิงพารามิเตอร์

 

  • ข้อสมมติของการทดสอบแบบพารามิเตอร์ไม่เป็นไปตามที่กำหนด
  • ข้อมูลอยู่ในระดับ ลำดับ หรือ ไม่เป็นการแจกแจงปกติ
  • ทนทานต่อค่าผิดปกติและข้อมูลที่ไม่เป็นเชิงเส้น

การแจกแจงแบบเบ้

การออกแบบการทดลองด้วย Python

สำรวจวิธีแบบไม่อิงพารามิเตอร์

 

  • วิธีแบบไม่อิงพารามิเตอร์สำหรับข้อมูลที่ไม่เป็นไปตามข้อสมมติแบบดั้งเดิม
  • Mann-Whitney U Test: เปรียบเทียบ สองกลุ่มที่เป็นอิสระ
  • Kruskal-Wallis Test: เปรียบเทียบ มากกว่าสองกลุ่ม

การแจกแจงแบบไม่ปกติ

การออกแบบการทดลองด้วย Python

การแสดงภาพข้อมูลแบบไม่อิงพารามิเตอร์

  • Violin plots: แสดงภาพการกระจายข้อมูลในแต่ละกลุ่ม
condensed_data = mineral_rocks[mineral_rocks['RockType'].isin(['Igneous', 'Metamorphic'])]

sns.violinplot(x='RockType', y='MineralHardness', data=condensed_data)

Violin plot ของความแข็งแร่แยกตามประเภทหิน (Igneous vs Metamorphic)

การออกแบบการทดลองด้วย Python

การแสดงภาพข้อมูลแบบไม่อิงพารามิเตอร์

  • Boxen plot: เข้าใจรูปร่างการกระจายข้อมูลได้ดีขึ้น
sns.boxenplot(x='RockType', y='MineralHardness', data=mineral_rocks)

Boxen plot ของการกระจายความแข็งแร่แยกตามประเภทหิน

การออกแบบการทดลองด้วย Python

การประยุกต์ใช้การทดสอบแบบไม่อิงพารามิเตอร์ - Mann Whitney U

from scipy.stats import mannwhitneyu, kruskal
u_stat, u_pval = mannwhitneyu(
    mineral_rocks[mineral_rocks['RockType'] == 'Igneous']['MineralHardness'],
    mineral_rocks[mineral_rocks['RockType'] == 'Sedimentary']['MineralHardness']
)

print(f"Mann-Whitney U test p-value: {u_pval:.4f}")
Mann-Whitney U test p-value: 0.9724
การออกแบบการทดลองด้วย Python

การประยุกต์ใช้การทดสอบแบบไม่อิงพารามิเตอร์ - Kruskal-Wallis

k_stat, k_pval = kruskal(
    mineral_rocks[mineral_rocks['RockType'] == 'Igneous']['MineralHardness'],
    mineral_rocks[mineral_rocks['RockType'] == 'Sedimentary']['MineralHardness'],
    mineral_rocks[mineral_rocks['RockType'] == 'Metamorphic']['MineralHardness']
)

print(f"Kruskal-Wallis test p-value: {k_pval:.4f}")
Kruskal-Wallis test p-value: 0.0630
การออกแบบการทดลองด้วย Python

มาฝึกกันเถอะ!

การออกแบบการทดลองด้วย Python

Preparing Video For Download...