在統(tǒng)計學(xué)中,分位數(shù)是一種描述數(shù)據(jù)分布的統(tǒng)計量。它是將整個數(shù)據(jù)集按大小順序排列后,將其分成若干等份的數(shù)值點。在這里,我們將學(xué)習(xí)如何使用Python編寫算分位數(shù)的程序。
def percentile(data, percentile): size = len(data) return sorted(data)[int(math.ceil((size * percentile) / 100)) - 1]
在上面的代碼中,我們使用了Python的一個內(nèi)置函數(shù)“sorted”來對數(shù)據(jù)進行排序,然后使用了“math.ceil”函數(shù)來獲得比輸入百分位數(shù)大的最小整數(shù)。這兩部分結(jié)合起來,可以得到給定數(shù)據(jù)集的任意百分位數(shù)。
我們可以通過以下方式來使用這個函數(shù):
data = [1, 2, 3, 4, 5] print(percentile(data, 50)) # 輸出:3 print(percentile(data, 90)) # 輸出:5
在本實例中,我們使用了一個名為“data”的數(shù)據(jù)集,并使用了這個函數(shù)來計算其中的50th和90th百分位數(shù)。我們可以看到,對于以升序排列的整數(shù)列表,結(jié)果分別為3和5。