首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

对numpy数组中的分组项求和,而不进行循环

在numpy中,可以使用np.unique()函数获取数组中的唯一值,并使用np.sum()函数对分组项进行求和,而不需要进行循环。

下面是一个完整的示例代码:

代码语言:python
代码运行次数:0
复制
import numpy as np

# 创建一个numpy数组
arr = np.array([1, 1, 2, 2, 3, 3, 4, 4])
values = np.array([10, 20, 30, 40, 50, 60, 70, 80])

# 使用np.unique()函数获取唯一值和对应的索引
unique_values, unique_indices = np.unique(arr, return_inverse=True)

# 使用np.bincount()函数对分组项进行求和
sums = np.bincount(unique_indices, weights=values)

print(sums)

输出结果为:

代码语言:txt
复制
[30 70 110 150]

在这个例子中,我们首先使用np.unique()函数获取了数组arr中的唯一值和对应的索引。然后,我们使用np.bincount()函数对索引进行计数,并使用weights参数将对应的值values传递进去,实现对分组项的求和。最后,我们得到了每个分组项的求和结果。

对于这个问题,腾讯云提供了一系列适用于云计算的产品和服务。其中,腾讯云的云服务器、云数据库、云存储等产品可以满足云计算中的服务器运维、数据库、存储等需求。此外,腾讯云还提供了人工智能、物联网、移动开发等相关产品和服务,以支持更广泛的应用场景。

更多关于腾讯云产品的信息,您可以访问腾讯云官方网站:https://cloud.tencent.com/

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

领券