np.unique( )的用法是什么?
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
np.unique()
是NumPy库中的一个函数,用于找出数组中的唯一值,并且可以选择对这些唯一值进行排序以及返回每个唯一值在原数组中出现的次数。这个函数常用于数据分析和数据预处理中处理类别变量或去重。
基本用法如下:
numpy.unique(arr, return_counts=False, axis=None, return_index=False, return_inverse=False)
参数解释: - arr
:输入的一维数组或者多维数组。如果输入是多维数组,会先被扁平化为一维数组处理。 - return_counts
:布尔值,默认为False。如果设置为True,函数会返回每个唯一值在数组中出现的次数。 - axis
:仅对一维数组有效,指明操作的轴。对于高维数组,此参数会被忽略,因为np.unique
会默认将输入数组扁平化为一维。 - return_index
:布尔值,默认为False。如果为True,返回每个唯一值第一个出现位置的索引。 - return_inverse
:布尔值,默认为False。如果为True,返回一个与原数组形状相同的数组,其中的元素表示原数组中对应元素在唯一化后的数组中的索引。
示例:
import numpy as np
# 基本用法
arr = np.array([1, 2, 2, 3, 4, 4, 4])
unique_values = np.unique(arr)
print(unique_values) # 输出: [1, 2, 3, 4]
# 返回唯一值及其计数
unique_values, counts = np.unique(arr, return_counts=True)
print(unique_values, counts) # 输出: [1, 2, 3, 4] [1, 2, 1, 3]
# 返回唯一值、计数、索引和逆变换
values, counts, indices, inv = np.unique(arr, return_counts=True, return_index=True, return_inverse=True)
print("Values:", values)
print("Counts:", counts)
print("Indices:", indices)
print("Inverse:", inv)
请注意,这里讨论的是NumPy库的功能,而非阿里云具体产品相关知识。如果您有关于阿里云产品的疑问,请随时提问!