Numpy 的 percentile(~)
方法返回指定百分位数的插值。
参数
1. a
| array-like
输入数组。
2. q
| array-like
共 float
要计算的所需百分位数,必须介于 0(含)和 100(含)之间。
3. axis
| None
或 int
| optional
计算百分位数所沿的轴。对于二维数组,允许的值如下:
轴 |
意义 |
---|---|
0 |
按列计算百分位 |
1 |
按行计算百分位数 |
None |
计算展平输入数组的百分位。 |
默认情况下,axis=None
。
4. out
| Numpy array
| optional
您可以将计算结果放入 out
指定的数组中,而不是创建新数组。
5. overwrite_input
| boolean
| optional
是否将中间计算保存到输入数组a
。这会节省内存空间,但也会使 a
的内容未定义。默认情况下,overwrite_input=False
。
6. interpolation
| string
| optional
当给定百分位数位于两个 data-points 之间时,如何对值进行插值,例如 i
和 j
,其中 i<j
:
值 |
意义 |
---|---|
linear |
标准线性插补 |
lower |
返回 |
higher |
返回 |
midpoint |
返回 |
nearest |
返回 |
默认情况下,interpolation="linear"
。
返回值
如果 q
是标量,则返回标量。否则,返回一个 Numpy 数组。
例子
计算单个百分位数
要获取第 50 个百分位数的值:
a = np.array([5,6,7,8,9])
np.percentile(a, 50)
7.0
计算多个百分位数
要获取第 50 个和第 75 个百分位数的值:
a = np.array([5,6,7,8,9])
np.percentile(a, [50, 75])
array([7., 8.])
更改插值方法
线性
考虑该值不存在的情况:
a = np.array([5,6,7,8,9])
np.percentile(a, 45)
6.800000000000001
此处,由于数组中不存在对应于第 45 个百分位的值,因此对该值进行线性插值(即默认情况下为 interpolation="linear"
)。
降低
a = np.array([5,6,7,8,9])
np.percentile(a, 45, interpolation="lower")
6
更高
a = np.array([5,6,7,8,9])
np.percentile(a, 45, interpolation="higher")
7
最近的
a = np.array([5,6,7,8,9])
np.percentile(a, 45, interpolation="nearest")
7
这里,从 interpolation="linear"
的输出来看,我们知道插值更接近 7 而不是 6。
中点
a = np.array([5,6,7,8,9])
np.percentile(a, 45, interpolation="midpoint")
6.5
相关用法
- Python Pandas period_range方法用法及代码示例
- Python Django permission_denied用法及代码示例
- Python Django permission_required用法及代码示例
- Python pandas.arrays.IntervalArray.is_empty用法及代码示例
- Python pyspark.pandas.Series.dropna用法及代码示例
- Python pyspark.pandas.groupby.SeriesGroupBy.unique用法及代码示例
- Python pandas.DataFrame.ewm用法及代码示例
- Python pandas.api.types.is_timedelta64_ns_dtype用法及代码示例
- Python pandas.DataFrame.dot用法及代码示例
- Python pandas.DataFrame.apply用法及代码示例
- Python pyspark.pandas.Series.dt.weekday用法及代码示例
- Python pyspark.pandas.DataFrame.select_dtypes用法及代码示例
- Python Pandas pivot方法用法及代码示例
- Python pyspark.pandas.date_range用法及代码示例
- Python pyspark.pandas.isnull用法及代码示例
- Python pyspark.pandas.Series.hasnans用法及代码示例
- Python pandas.DataFrame.combine_first用法及代码示例
- Python pyspark.pandas.Series.rmul用法及代码示例
- Python pyspark.sql.functions.grouping_id用法及代码示例
- Python pyspark.pandas.Series.str.repeat用法及代码示例
- Python pyspark.pandas.DataFrame.groupby用法及代码示例
- Python pandas.Series.iloc用法及代码示例
- Python pyspark.ml.feature.DCT用法及代码示例
- Python pandas.Timestamp.to_numpy用法及代码示例
- Python pyspark.sql.functions.hours用法及代码示例
注:本文由纯净天空筛选整理自Isshin Inada大神的英文原创作品 NumPy | percentile method。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。