วิธีการคำนวณเปอร์เซ็นไทล์ใน python: พร้อมตัวอย่าง


เปอร์เซ็นไทล์ ที่ n ของชุดข้อมูลคือค่าที่ตัด n เปอร์เซ็นต์บนสุดของค่าข้อมูลออก เมื่อค่าทั้งหมดจัดเรียงจากน้อยไปหามาก

ตัวอย่างเช่น เปอร์เซ็นไทล์ที่ 90 ของชุดข้อมูลคือค่าที่แยกค่าข้อมูล 90% ล่างสุดออกจาก 10% แรกของค่าข้อมูล

เราสามารถคำนวณเปอร์เซ็นต์ไทล์ใน Python ได้อย่างรวดเร็วโดยใช้ฟังก์ชัน numpy.percentile() ซึ่งใช้ไวยากรณ์ต่อไปนี้:

numpy.percentile(a, q)

ทอง:

  • ก: ตารางค่า
  • ถาม: เปอร์เซ็นต์หรือลำดับของเปอร์เซ็นไทล์ที่จะคำนวณ ซึ่งต้องอยู่ระหว่าง 0 ถึง 100

บทช่วยสอนนี้จะอธิบายวิธีใช้ฟังก์ชันนี้เพื่อคำนวณเปอร์เซ็นต์ไทล์ใน Python

วิธีค้นหาเปอร์เซ็นต์ไทล์ของตาราง

รหัสต่อไปนี้สาธิตวิธีการค้นหาเปอร์เซ็นต์ไทล์ที่แตกต่างกันสำหรับอาร์เรย์ที่กำหนดใน Python:

 import numpy as np

#make this example reproducible
n.p. random . seeds (0)

#create array of 100 random integers distributed between 0 and 500
data = np. random . randint (0, 500, 100)

#find the 37th percentile of the array
n.p. percentile (data, 37)

173.26

#Find the quartiles (25th, 50th, and 75th percentiles) of the array
n.p. percentile (data, [25, 50, 75])

array([116.5, 243.5, 371.5])

วิธีค้นหาเปอร์เซ็นต์ไทล์ของคอลัมน์ DataFrame

รหัสต่อไปนี้แสดงวิธีการค้นหาค่าเปอร์เซ็นไทล์ที่ 95 สำหรับคอลัมน์ Pandas DataFrame เดียว:

 import numpy as np 
import pandas as pd

#createDataFrame
df = pd.DataFrame({'var1': [25, 12, 15, 14, 19, 23, 25, 29, 33, 35],
                   'var2': [5, 7, 7, 9, 12, 9, 9, 4, 14, 15],
                   'var3': [11, 8, 10, 6, 6, 5, 9, 12, 13, 16]})

#find 90th percentile of var1 column
n.p. percentile (df. var1 , 95)

34.1

วิธีค้นหาเปอร์เซ็นต์ไทล์ของคอลัมน์ DataFrame หลายคอลัมน์

รหัสต่อไปนี้แสดงวิธีการค้นหาค่าเปอร์เซ็นไทล์ที่ 95 สำหรับหลายคอลัมน์ใน DataFrame ของแพนด้า:

 import numpy as np 
import pandas as pd

#createDataFrame
df = pd.DataFrame({'var1': [25, 12, 15, 14, 19, 23, 25, 29, 33, 35],
                   'var2': [5, 7, 7, 9, 12, 9, 9, 4, 14, 15],
                   'var3': [11, 8, 10, 6, 6, 5, 9, 12, 13, 16]})

#find 95th percentile of each column
df. quantile (.95)

var1 34.10
var2 14.55
var3 14.65

#find 95th percentile of just columns var1 and var2
df[[' var1 ', ' var2 ']]. quantile (.95)

var1 34.10
var2 14.55

โปรดทราบว่าเราสามารถใช้ฟังก์ชัน pandas quantile() ในตัวอย่างด้านบนเพื่อคำนวณเปอร์เซ็นต์ไทล์ได้

ที่เกี่ยวข้อง: วิธีการคำนวณเปอร์เซ็นไทล์ใน R (พร้อมตัวอย่าง)

เพิ่มความคิดเห็น

อีเมลของคุณจะไม่แสดงให้คนอื่นเห็น ช่องข้อมูลจำเป็นถูกทำเครื่องหมาย *