ฉันมีตัวอย่างถ่วงน้ำหนักซึ่งฉันต้องการคำนวณปริมาณ 1
จะเป็นการดีที่น้ำหนักเท่ากัน (ไม่ว่าจะ = 1 หรืออื่น ๆ ) ผลจะสอดคล้องกับพวกและอาร์เอสscipy.stats.scoreatpercentile()
quantile(...,type=7)
วิธีการง่ายๆวิธีหนึ่งคือ "คูณออก" ตัวอย่างโดยใช้ตุ้มน้ำหนักที่ให้ ที่ให้ ecdf "แบน" ในพื้นที่ได้อย่างมีประสิทธิภาพในพื้นที่น้ำหนัก> 1 ซึ่งดูเหมือนว่าวิธีการที่ไม่ถูกต้องโดยสัญชาตญาณเมื่อตัวอย่างเป็นตัวอย่างย่อย โดยเฉพาะมันหมายความว่าตัวอย่างที่มีน้ำหนักทั้งหมดเท่ากับ 1 มีควอนไทล์ที่แตกต่างกันมากกว่าหนึ่งที่มีน้ำหนักทั้งหมดเท่ากับ 2 หรือ 3 (หมายเหตุอย่างไรก็ตามกระดาษที่อ้างถึงใน [1] จะใช้วิธีการนี้)
http://en.wikipedia.org/wiki/Percentile#Weighted_percentileเป็นสูตรทางเลือกสำหรับเปอร์เซ็นไทล์แบบถ่วงน้ำหนัก มันไม่ชัดเจนในการกำหนดนี้ว่าตัวอย่างที่อยู่ติดกันที่มีค่าเหมือนกันควรนำมารวมกันก่อนและรวมน้ำหนักและในกรณีใด ๆ ผลลัพธ์ของผลลัพธ์จะไม่สอดคล้องกับชนิดเริ่มต้นของ R 7 quantile()
ในกรณีที่ไม่มีน้ำหนัก / น้ำหนักเท่ากัน หน้าวิกิพีเดียเกี่ยวกับ quantiles ไม่ได้พูดถึงกรณีน้ำหนักเลย
มีฟังก์ชั่นทั่วไปของฟังก์ชั่น quantile "type 7" แบบถ่วงน้ำหนักของ R หรือไม่?
[ใช้ Python แต่เพียงมองหาอัลกอริทึมจริงๆดังนั้นภาษาใดก็ตามที่จะทำ]
M
[1] น้ำหนักเป็นจำนวนเต็ม น้ำหนักเป็นของผู้บัฟเฟอร์ซึ่งจะรวมกันใน "ล่มสลาย" และ "ส่งออก" การดำเนินงานตามที่อธิบายในhttp://infolab.stanford.edu/~manku/papers/98sigmod-quantiles.pdf โดยพื้นฐานแล้วตัวอย่างที่ถ่วงน้ำหนักคือการสุ่มตัวอย่างย่อยของตัวอย่างที่ไม่ได้ชั่งน้ำหนักเต็มโดยแต่ละองค์ประกอบ x (i) ในตัวอย่างย่อยที่เป็นตัวแทนของน้ำหนัก (i) ในตัวอย่างเต็ม