3 回答
TA贡献1811条经验 获得超4个赞
numpy
您可以通过以下方式进行操作:
import numpy as np a = np.array([1,2,3,4,5]) p = np.percentile(a, 50)
您可以percentile
在附加链接中阅读有关该功能的更多信息。
另一种选择是使用它,它将为您提供分隔 n 个分位数间隔的分割点statistics.quantiles
的分布列表。n - 1
使用示例:
from statistics import quantiles
quantiles([1, 2, 3, 4, 5], n=100)
# [0.06, 0.12, 0.18, 0.24, 0.3, 0.36, 0.42, 0.48, 0.54, 0.6, 0.66, 0.72, 0.78, 0.84, 0.9, 0.96, 1.02, 1.08, 1.14, 1.2, 1.26, 1.32, 1.38, 1.44, 1.5, 1.56, 1.62, 1.68, 1.74, 1.8, 1.86, 1.92, 1.98, 2.04, 2.1, 2.16, 2.22, 2.28, 2.34, 2.4, 2.46, 2.52, 2.58, 2.64, 2.7, 2.76, 2.82, 2.88, 2.94, 3.0, 3.06, 3.12, 3.18, 3.24, 3.3, 3.36, 3.42, 3.48, 3.54, 3.6, 3.66, 3.72, 3.78, 3.84, 3.9, 3.96, 4.02, 4.08, 4.14, 4.2, 4.26, 4.32, 4.38, 4.44, 4.5, 4.56, 4.62, 4.68, 4.74, 4.8, 4.86, 4.92, 4.98, 5.04, 5.1, 5.16, 5.22, 5.28, 5.34, 5.4, 5.46, 5.52, 5.58, 5.64, 5.7, 5.76, 5.82, 5.88, 5.94]
quantiles([1, 2, 3, 4, 5], n=100)[49]
TA贡献2036条经验 获得超8个赞
您可以找到百分位数numpy
import numpy as np
arr = [20, 2, 7, 1, 34]
percentile_arr = [10,50,90]
for i in range(0,len(percentile_arr)):
percentile = np.percentile(arr, percentile_arr[i])
print(f"{percentile_arr[i]}th percentile of array is : {percentile}")
TA贡献1765条经验 获得超5个赞
嗯,数组是指列表吗?
如果是这样,那么你有一个很好的选择:for循环
my_values = [...]
result = []
percentage = 0,5
for i in my_values:
result.append(i*percentage)
列表结果的append方法是告诉python“嘿,我希望你把这个东西添加到列表中”的一种方式
添加回答
举报