NumPy元素操作
NumPy元素操作
NumPy对元素的操作一般为增删改查和切片5种。
1.增
np.append(arr,value,axis=n)
# arr:要操作的数组
# value:要增加的值
# axis:操作的维度
(1)一维数组
import numpy as np
# 添加数据,一维数组无需指定axis
arr = np.array([1, 2, 3, 4])
# 添加一个数据
arr1 = np.append(arr, 5)
# 添加两个数据
arr2 = np.append(arr, [5, 6])
print("arr1:")
print(arr1)
print("arr2:")
print(arr2)
(2)二维数组
import numpy as np
arr = np.array([[1, 2, 3, 4], [5, 6, 7, 8]])
# axis=0 对第一个维度进行操作
arr1 = np.append(arr, [[9, 10, 11, 12]], axis=0)
# axis=1 对第二个维度进行操作
arr2 = np.append(arr, [[5], [9]], axis=1)
print("arr1:")
print(arr1)
print("arr2:")
print(arr2)
2.删
np.delete(arr,m,axis=n)
# arr:要操作的数组
# m:要删除的索引
# axis:操作的维度
(1)一维数组
import numpy as np
arr = np.array([1, 2, 3, 4, 5])
arr1 = np.delete(arr, 0)
print("arr1:")
print(arr1)
(2)二维数组
import numpy as np
arr = np.array([[1, 2, 3, 4], [5, 6, 7, 8]])
# axis=0 对第一个维度进行操作
arr1 = np.delete(arr, 0, axis=0)
# axis=1 对第二个维度进行操作
arr2 = np.delete(arr, 0, axis=1)
print("arr1:")
print(arr1)
print("arr2:")
print(arr2)
3.改
import numpy as np
arr = np.array([[1, 2, 3], [4, 5, 6]])
arr[0, 0] = 0
arr[1] = [0, 1, 2]
print("arr:")
print(arr)
4.查
import numpy as np
arr = np.array([[1, 2, 3], [4, 5, 6]])
print(arr[0, 0])
print(arr[0, -1])
print(arr[0])
print(arr[-1])
5.切片
(1)一维数组
import numpy as np
# 和Python的切片类似
arr = np.arange(1, 11)
print(arr[1:3])
print(arr[1:])
print(arr[:7])
(2)二维数组
import numpy as np
# 和Python的切片类似
arr = np.random.randint(10, 30, (10, 10))
print("arr:")
print(arr)
print("===================")
print(arr[3:5])
print("===================")
print(arr[:1])
print("===================")
# 取第一行
print(arr[0, :])
print("===================")
# 取第一列
print(arr[:, 0])