np.bincount
时间: 2023-10-19 18:14:14 浏览: 140
`np.bincount` 是 NumPy 库中的一个函数,用于计算非负整数的频数。它的语法如下:
```python
np.bincount(arr, weights=None, minlength=0)
```
其中,参数含义如下:
- `arr`: 非负整数数组,表示要计算频数的数组。
- `weights` (可选):权重数组,用于加权计算频数。默认为 None,即不加权。
- `minlength` (可选):输出数组的最小长度。默认为 0。
该函数返回一个数组,其中第 i 个元素表示值 i 在输入数组中出现的频率。如果 `weights` 不为 None,则第 i 个元素表示值 i 在输入数组中的加权频率。如果 `minlength` 大于输出数组的长度,则输出数组会自动补零。
以下是一个示例:
```python
import numpy as np
arr = np.array([0, 1, 1, 3, 2, 1, 7, 7, 7])
freq = np.bincount(arr)
print(freq) # 输出 [1 3 1 1 0 0 0 3]
```
在上面的示例中,输入数组中 0 出现了 1 次,1 出现了 3 次,2 出现了 1 次,3 出现了 1 次,7 出现了 3 次,因此 `np.bincount` 返回的数组为 `[1 3 1 1 0 0 0 3]`。
相关问题
np.bincount()
`np.bincount()`是NumPy库中的一个函数,主要用于统计离散整数数组中各个元素的频数。它的基本用法是对输入数组中的每个元素,计算该元素在指定范围内出现的次数,并返回一个新的计数数组。这个函数常用于频率分析、离散数据的可视化以及生成直方图的基础。
例如,如果你有一个表示班级成绩的整数数组,你可以使用`bincount`来获取每个分数段的学生人数:
```python
import numpy as np
scores = [85, 90, 75, 85, 92, 78]
counts = np.bincount(scores)
```
这将返回一个一维数组 `[3, 2, 1]`,分别对应85分、90分和75分的学生人数。
`np.bincount()`还可以接受额外的两个参数,` minlength` 和 `weights`,用来进一步定制功能:
- `minlength` 指定输出数组的长度,如果不设置则会自动填充最大值加1。
- `weights` 可以是一个数组,其中每个元素对应输入数组的一个元素,`weights[i]` 将乘以 `i` 后作为 `np.bincount()` 的输入。
使用`weights`时,`bincount`实际上是计算每个值在给定权重下的总和,而非简单计数。
需要注意的是,`np.bincount()`对于负数或浮点数不会直接工作,通常需要先转换成整数范围内的索引。
np.bincount()用法
np.bincount()是NumPy库中的一个函数,用于统计数组中每个非负整数的出现次数。它返回一个与数组大小相同的一维整型数组,其中第i个元素表示整数i在数组中出现的次数。在使用时,可以指定权重数组,以便为数组中的每个元素分配一个权重。
阅读全文