การกระจายเบต้าที่เหมาะสมใน Scipy


14

ตามที่วิกิพีเดียการกระจายเบต้าน่าจะมีสองพารามิเตอร์รูปร่าง: และβαβ

เมื่อฉันโทรscipy.stats.beta.fit(x)ใน Python xจะมีการคืนค่าจำนวนพวงในช่วง , 4 ค่า สิ่งนี้ทำให้ฉันประหลาด[0,1]

หลังจาก googling ผมพบว่าหนึ่งในค่าที่ส่งกลับมาจะต้องเป็น 'ตั้ง' เนื่องจากตัวแปรที่สามคือ 0 scipy.stats.beta.fit(x, floc=0)ถ้าผมโทร

ไม่มีใครรู้ว่าสิ่งที่ตัวแปรที่สี่คือและถ้าสองคนแรกคือและβ ?αβ


1
เอกสารเรียกสองคนสุดท้าย "สถานที่" และ "โย" พารามิเตอร์ ดังนั้นที่สี่คือพารามิเตอร์ขนาด สถานที่ตั้งและสเกลมีความหมายทางสถิติมาตรฐาน การตีความหมายในบริบทนี้จะได้รับอย่างชัดเจนในหนังสือคู่มือ NIST
whuber

ฉันมีปัญหาเดียวกันนี้ แต่ด้วยเหตุผลบางอย่างทุกรุ่นเบต้าของฉันมีแนวโน้มที่จะ "ถือน้ำ" ยกตัวอย่างเช่นสำหรับฉันได้รับstats.beta.fit([60,61,62,72]) (0.7313395126217731, 0.7153715263378897, 58.999999999999993, 3.3500998441036982)มีความคิดอะไรที่ฉันสามารถทำได้เกี่ยวกับเรื่องนี้?
TheChymera

เพียงแค่เพิ่มเอกสารนี้เป็นวิธีการทั่วไปพอดีอย่างต่อเนื่องตัวแปรสุ่มซึ่งรวมถึงตัวอย่างบางส่วนใช้ beta.fit (): docs.scipy.org/doc/scipy/reference/generated/...
mathisfun

คำตอบ:


13

แม้ว่าจะไม่มีเอกสารที่ชัดเจนเกี่ยวกับผลลัพธ์ของbeta.fitมัน แต่จะส่งออกตามลำดับต่อไปนี้:

αβ


มันแค่กระจายขีด จำกัด ล่างและบนตามช่วงของข้อมูลหรือทำอย่างอื่นหรือไม่
shadowtalker

ขีด จำกัด ขึ้นอยู่กับการแจกแจงความน่าจะเป็น กล่าวคือ กระจายปกติได้ไม่ จำกัด แต่ข้อมูลตัวอย่างไม่ค่อยเกิน +/-3~ การแจกแจงแบบเบต้ามีขีด จำกัด อย่างหนักโดยมีความน่าจะเป็นที่ 0 นอกขีด จำกัด เป็นไปได้ว่าข้อมูลของคุณจะไม่ถึงขีด จำกัด ทั้งนี้ขึ้นอยู่กับสิ่งที่คุณกำลังสร้างแบบจำลอง ในความเป็นจริงการพยายามบังคับขีด จำกัด เหล่านั้นให้ตรงกับช่วงของข้อมูลอาจเป็นปัญหาได้เนื่องจากการแจกแจงแบบเบต้าจำนวนมากมีแนวโน้มที่จะเป็นศูนย์ที่ขีด จำกัด ดูโพสต์นี้สำหรับข้อมูลเพิ่มเติมเกี่ยวกับปัญหานั้น
jdj081

1
ใช่ฉันรู้แล้ว ขีด จำกัด เหล่านั้นเป็น 0 และ 1 เสมอดังนั้น: ขีด จำกัด บนและล่างที่ส่งคืนโดยฟังก์ชันนี้คืออะไรและจะมีค่าเหมือนกับ "ตำแหน่ง" และ "สเกล" อย่างไร ฉันเดาว่าฉันไม่เข้าใจคำตอบนี้
shadowtalker

2
วิธีกำหนดการแจกแจงแบบเบต้าขีด จำกัด เหล่านั้นเป็น 0 และ 1 เสมอ แต่การแจกแจงแบบเบต้าทั่วไปรวมถึงปัจจัยการปรับสเกลทั้งสอง ข้อมูลที่ฉันโมเดลไม่อยู่ระหว่าง 0 ถึง 1 ดังนั้นฉันต้องใช้ตัวเลขเหล่านั้น หากข้อมูลของคุณอยู่ระหว่าง 0 ถึง 1 แสดงว่าผลลัพธ์เหล่านั้นควรอยู่ใกล้กับ 0 และ 1 มากหากคุณทราบว่าขีด จำกัด ของคุณคือ 0 และ 1 คุณสามารถบังคับให้มีค่าด้วยfloc=0และfscale=1kwargs คุณจะยังคงได้รับผลลัพธ์เหล่านั้น แต่จะเหมือนกันกับสิ่งที่คุณบังคับให้เป็น และมีแนวโน้มที่จะเปลี่ยนค่าอัลฟ่าและเบต้าของคุณ
jdj081
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.