开启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第18天,点击查看活动详情
数组去重
函数:
np.unique()
举例:
arr1 = np.array([1,2,3,4,4,4,2,3,3])
uniq_arr1 = np.unique(arr1)
arr2 = np.array([[1,2,3,4,5,6],[2,2,2,4,5,6]])
uniq_arr2 = np.unique(arr2)
print(f"一维的数组去重后:{uniq_arr1}")
print(f"二维的数组去重后:{uniq_arr2}")
ps:n维去重后返回值都是1维
结果:
数组的索引与切片
首先,数组中的索引与切片是与Python基础中列表的索引、切片是一样的。但数组存在多维,所有略有不同。
举个例子:
arr3 = np.ones([2,2,2])
print(f"先查看生成的3维的数组,它一维有2个元素,二维有2个元素,三维有2个元素:\n{arr3}")
print("===========")
arr3[0] = 2
print(f"将最高维即三维的第1项全部元素更改为2:\n{arr3}")
print("===========")
arr3[0,0] = 3
print(f"将三维的第1项的第1项 即二维第1项全部元素更改为3:\n{arr3}")
print("===========")
arr3[0,0,0] = 4
print(f"将一维的第1项的全部元素改为4:\n{arr3}")
ps:这边需要注意高维的数组,arr [num1 , num2 , num3 ,···],从左至右是从最高维开始逐步递减的。
结果:
再举个可以进行倒序的例子:
arr4 = np.array([[1,2,3,4],[8,7,6,5]])
print(arr4)
print("==========")
print(f"{arr4[::,::-1]}")
print("这边只有两个维度")
print("第一个参数表示二维层面的元素都有操作到")
print("第二个参数表示将一维层面的元素全部倒序遍历")
结果:
实际上和大多数切片和索引的用法类似,还是需要灵活运用。