数据分析之Numpy常用方法【array_equal()、unique()】

本文介绍了numpy库中的`array_equal`函数,用于检查两个数组或列表的元素和形状是否相同,并通过示例展示了其用法。同时,探讨了`np.unique`函数,它能去除数组中的重复元素并排序,可用于一维和二维数组。示例中展示了在不同场景下使用这两个函数的结果。
摘要由CSDN通过智能技术生成

np.array_equal()

  • 1、该方法可以检查两个数组是否具有相同的形状和元素。
  • 2、该方法还可用在数组和列表之间、列表与列表间的比较
# 一维数组,或者列表
a = np.array([1, 3, 5, 7, 9])
b = np.array([2, 4, 6, 8, 0])

list_a = [1, 3, 5, 7, 9]  # 列表,在python中一维数组被称为列表,numpy则叫做数组
list_b = [2, 4, 6, 8, 0]

copy_a = np.array([1, 3, 5, 7, 9])

# 不同位数的数组
c = np.array([1, 3, 5])

# 二维数组
arr1 = np.array([[1, 3, 5], [2, 4, 6]])
arr2 = np.array([[1, 3, 5], [2, 4, 6]])
arr3 = np.array([[2, 4, 6], [1, 3, 5]])

print("数组和数组比较:{}".format(np.array_equal(a, b)))  # 数组和数组比较
print("数组和列表比较:{}".format(np.array_equal(a, list_a)))  # 数组和列表比较
print("不同位数的数组比较:{}".format(np.array_equal(a, c)))  # 不同位数的数组比较
print("二维数组间的比较:{}==={}".format(np.array_equal(arr1, arr2), np.array_equal(arr1, arr3)))
print("不同维度数组的比较:{}".format(np.array_equal(a, arr1)))
输出:
数组和数组比较:False
数组和列表比较:True
不同位数的数组比较:False
二维数组间的比较:True===False
不同维度数组的比较:False

np.unique()

  • 注意,该方法排序后,会对数组重新进行排序
a = np.array([6, 5, 7, 3, 6, 3, 4, 3, 9, 3, 0, 6])
arr_1 = np.array([[3, 2, 3, 6], [3, 0, 3, 8], [3, 2, 3, 6]])
print(a)
print(np.unique(a))
print("="*40)

print(arr_1)
print("-"*20)
print(np.unique(arr_1, axis=0))
print("-"*20)
print(np.unique(arr_1, axis=1))
print("="*40)
输出
[6 5 7 3 6 3 4 3 9 3 0 6]
[0 3 4 5 6 7 9]
========================================
[[3 2 3 6]
 [3 0 3 8]
 [3 2 3 6]]
--------------------
[[3 0 3 8]
 [3 2 3 6]]
--------------------
[[2 3 6]
[0 3 8]
[2 3 6]]
========================================
arr_1 = np.array([[3, 0, 3, 6], [3, 2, 3, 8], [3, 0, 3, 6]])

print(arr_1)
print("-"*20)
print(np.unique(arr_1, axis=0))
print("-"*20)
print(np.unique(arr_1, axis=1))
输出:
[[3 0 3 6]
 [3 2 3 8]
 [3 0 3 6]]
--------------------
[[3 0 3 6]
 [3 2 3 8]]
--------------------
[[0 3 6]
 [2 3 8]
 [0 3 6]]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值