เริ่มต้นใช้งานเริ่มต้นใช้งานได้ฟรี

วิเคราะห์ข้อมูลที่มีการกระจายแบบเบ้ด้วย Permutation Test

Permutation test มีประโยชน์ในสถานการณ์ที่ไม่เป็นไปตามเงื่อนไขของการทดสอบสมมติฐานแบบที่คุ้นเคย ในแบบฝึกหัดนี้จะได้เขียน permutation test โดยใช้แพ็กเกจ statsmodels

เราสนใจเปรียบเทียบจำนวนรอบการระดมทุนเฉลี่ยระหว่างบริษัทในกลุ่ม analytics กับบริษัทที่ได้รับการลงทุนจาก venture capital กลุ่มอื่น แม้อาจอยากใช้ t-test แต่จำนวนรอบการระดมทุนนั้น ไม่ได้ มีการกระจายแบบปกติ บริษัทส่วนใหญ่มีเพียงรอบเดียว และจำนวนบริษัทที่มีสองรอบขึ้นไปลดลงอย่างรวดเร็ว

ข้อมูลต่อไปนี้ถูกโหลดไว้ให้แล้ว:

  • analytics_df - ข้อมูลของบริษัท analytics ทั้งหมด
  • non_analytics_df - ข้อมูลของบริษัทอื่นที่ไม่ใช่กลุ่ม analytics

แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร

พื้นฐานการอนุมานทางสถิติด้วย Python

ดูคอร์ส

คำแนะนำการฝึกหัด

  • กำหนดฟังก์ชันสถิติที่รับกลุ่มตัวอย่างสองกลุ่ม คือ fundings_group_1 และ fundings_group_2 แล้วคืนค่าความแตกต่างของค่าเฉลี่ย funding_rounds
  • ดำเนิน permutation test โดยใช้คอลัมน์ funding_rounds จากแต่ละชุดข้อมูล ฟังก์ชันสถิติที่กำหนดไว้ และการสุ่มตัวอย่างซ้ำ 100 ครั้ง
  • แสดงค่า p-value ที่ได้จาก permutation test

แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ

ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์

# Write a "statistic" function which calculates the difference in means
def statistic(funding_group_1, funding_group_2):
  return ____(fundings_group_1) - ____(funding_group_2)

# Conduct a permutation test using 100 resamples
perm_result = stats.permutation_test((____['funding_rounds'], ____['funding_rounds']),
                                    statistic=____,
                                    n_resamples=____,
                                    vectorized=____)

# Print the p-value
____(____.pvalue)
แก้ไขและรันโค้ด