python - 如果不存在元素值,则在保留空间的同时计算数组中值的频率的有效方法
问题描述
我有一个大型 1d NumPy 数组,其值介于 [0, 6] 之间。例如,假设A = [0, 0, 2, 4, 4]
我想从 A 创建以下数组:B = [2, 0, 1, 0, 2, 0, 0]
这是因为 A 中有 2 个 0,A 中有 0 个 1,A 中有 1 个 2,A 中有 0 个 3,A 中有 2 个 4,A 中有 0 个 5,A 中有 0 个 6。
我不确定最有效的方法是什么。
解决方案
尝试np.bincount
In [944]: np.bincount(A, minlength=7)
Out[944]: array([2, 0, 1, 0, 2, 0, 0], dtype=int64)
推荐阅读
- mysql - 如何在 SQL 的日期字段中插入日期
- php - 将变量从一个函数传递到同一控制器中的另一个函数
- java - Eclipse 在 Windows10 中安装时返回错误消息
- android - 在 react-native 应用程序的发布版本中获取错误
- visual-studio-code - VS Code - 一个文件夹中的多个源文件
- python - 如何进行流畅的图像运动?| 基维
- python - Python获取div标签下的href
- jquery - 具有延迟和页面调整大小的 J-query 动画
- python - Selenium 找不到元素
- kubernetes - 如何在 Prometheus 中推送 Kubernetes 指标而不是拉取?