ฉันมีชุดจำนวนจริง ฉันต้องประมาณควอนไทล์ของจำนวนใหม่ มีวิธีที่สะอาดในการทำเช่นนี้ใน R หรือไม่? โดยทั่วไป?
ฉันหวังว่านี่ไม่ใช่เรื่องเล็กน้อย ;-)
ชื่นชมมากสำหรับการตอบสนองของคุณ
PK
ฉันมีชุดจำนวนจริง ฉันต้องประมาณควอนไทล์ของจำนวนใหม่ มีวิธีที่สะอาดในการทำเช่นนี้ใน R หรือไม่? โดยทั่วไป?
ฉันหวังว่านี่ไม่ใช่เรื่องเล็กน้อย ;-)
ชื่นชมมากสำหรับการตอบสนองของคุณ
PK
คำตอบ:
คุณสามารถใช้ecdf
ซึ่งใช้เวกเตอร์และส่งคืนฟังก์ชันเพื่อรับค่าเปอร์เซ็นต์
> percentile <- ecdf(1:10)
> percentile(8)
[1] 0.8
หากต้องการขยายสิ่งที่ whuber และ cwarden ระบุไว้บางครั้งคุณต้องการใช้ฟังก์ชันในลักษณะ "คลาสสิค" R จากนั้นคุณสามารถเขียนมันเองโดยใช้ecdf()
:
ecdf_fun <- function(x,perc) ecdf(x)(perc)
ecdf_fun(1:10,8)
>[1] 0.8