如何从 numpy 数组中删除重复元素
您可以使用以下方法删除 NumPy 中的重复元素:
方法 1:从 NumPy 数组中删除重复元素
new_data = np. unique (data)
方法 2:从 NumPy 矩阵中删除重复行
new_data = np. single (data, axis= 0 )
方法 3:从 NumPy 矩阵中删除重复列
new_data = np. unique (data, axis= 1 )
以下示例展示了如何在实践中使用每种方法。
示例 1:从 NumPy 数组中删除重复元素
以下代码显示如何从 NumPy 数组中删除重复元素:
import numpy as np
#create NumPy array
data = np. array ([1, 1, 1, 2, 2, 4, 5, 5, 5, 5, 7, 8])
#create new array that removes duplicates
new_data = np. unique (data)
#view new array
print( new_data)
[1 2 4 5 7 8]
请注意,所有重复项均已从 NumPy 数组中删除,仅保留唯一值。
示例 2:从 NumPy 矩阵中删除重复行
以下代码显示如何从 NumPy 矩阵中删除重复行:
import numpy as np
#create NumPy matrix
data = np. array ([[1, 5, 5, 8],
[1, 5, 5, 8],
[6, 2, 3, 4],
[6, 2, 3, 4]])
#create new array that removes duplicate rows
new_data = np. single (data, axis= 0 )
#view new matrix
print (new_data)
[[1 5 5 8]
[6 2 3 4]]
请注意,所有重复的行已从 NumPy 矩阵中删除,仅保留唯一的行。
示例 3:从 NumPy 矩阵中删除重复列
以下代码显示如何从 NumPy 矩阵中删除重复的列:
import numpy as np
#create NumPy matrix
data = np. array ([[1, 1, 5, 8, 1],
[1, 1, 2, 6, 1],
[4, 4, 3, 8, 4]])
#create new matrix that removes duplicate columns
new_data = np. unique (data, axis= 1 )
#view new matrix
print (new_data)
[[1 5 8]
[1 2 6]
[4 3 8]]
请注意,所有重复的列已从 NumPy 矩阵中删除,仅保留唯一的列。
其他资源
以下教程解释了如何在 NumPy 中执行其他常见任务:
如何用值填充 NumPy 数组
如何从 NumPy 数组中删除特定元素
如何替换 NumPy 数组中的元素
如何从 NumPy 数组中获取特定行