c语言编程笔录

首页 >   > 笔记大全

笔记大全

numpyunique函数怎么使用

更新时间:2023-11-30

numpy.unique()函数概述

NumPy的unique()函数用于返回给定数组中的唯一元素。 它返回唯一的元素以及唯一元素的数量。
用法如下:

    np.unique(arr, return_index=False, return_inverse=False, return_counts=False, axis=None)

唯一参数解释:

  • arr:输入数组,如果不是1-D,则会展开至1-D,返回一个有序的输出数组。
  • return_index:如果为True,则返回输入数组中唯一元素的下标。
  • return_inverse:如果为True,则返回输入数组中每个元素在输出数组中的下标。
  • return_counts:如果为True,则返回输入数组中每个唯一元素的都出现了几次。
  • axis:用于操作的轴,默认为None。 如果不为None,则沿该轴的元素被展平后,元素会被视为独立的。

用例1:返回排序后的唯一元素

    import numpy as np

    arr = np.array([1, 2, 5, 2, 3, 1, 4, 5])
    print(np.unique(arr))

代码解释:输入数组中的重复元素被过滤,并返回每个唯一元素按顺序排列的数组。

输出为:

    [1 2 3 4 5]

用例2:返回唯一的元素和它们的数量

    import numpy as np

    arr = np.array([1, 2, 5, 2, 3, 1, 4, 5])
    unique, counts = np.unique(arr, return_counts=True)
    print(np.asarray((unique, counts)).T)

代码解释:返回唯一的元素以及元素的数量(这些数量通常称为频率)。

输出为:

    [[1 2]
     [2 2]
     [3 1]
     [4 1]
     [5 2]]

用例3:去除输入数组中的重复元素

    import numpy as np

    arr = np.array([1, 2, 5, 2, 3, 1, 4, 5])
    print(np.unique(arr, return_index=True)[1])

代码解释:返回输入数组中唯一元素的下标。

输出为:

    [0 1 4 6 2]

总结

numpy.unique()函数是NumPy中的一个有用函数,它用于查找给定数组中的唯一元素。返回唯一元素的数量和唯一元素的值本身。 这个函数允许访问到输入数组的每个元素在输出数组中的位置,以及每个唯一元素在输入数组中出现了几次。 可以使用NumPy的unique()函数在处理有重复元素的数据时有用。