NumPy(索引、array合并与分割)

一、Numpy索引

  1. 一维索引
import numpy as np
A = np.arange(3,15)
# array([3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14])
         
print(A[3])    # 6
  1. 二维索引
A = np.arange(3,15).reshape((3,4))
"""
array([[ 3,  4,  5,  6]
       [ 7,  8,  9, 10]
       [11, 12, 13, 14]])
"""
         
print(A[2])         # [11 12 13 14]
  • 二维索引取值
print(A[1][1])      # 8
  • 切片操作
    注:1:3表示对第2到第4进行切片输出(不包含第4)
print(A[1, 1])      # 8
print(A[1, 1:3])    # [8 9]

二、array 合并

  1. np.vstack() 上下合并
  • vertical stack本身属于一种上下合并,即对括号中的两个整体进行对应操作。
import numpy as np
A = np.array([1,1,1])
B = np.array([2,2,2])
         
print(np.vstack((A,B)))    # vertical stack
"""
[[1,1,1]
 [2,2,2]]
"""
  • 利用shape函数可以让我们很容易地知道A和C的属性,从打印出的结果来看,A仅仅是一个拥有3项元素的数组(数列),而合并后得到的C是一个2行3列的矩阵。
C = np.vstack((A,B))      
print(A.shape,C.shape)
# (3,) (2,3)
  1. np.hstack() 左右合并
D = np.hstack((A,B))       # horizontal stack

print(D)
# [1,1,1,2,2,2]

print(A.shape,D.shape)
# (3,) (6,)
  • 通过打印出的结果可以看出:D本身来源于A,B两个数列的左右合并,而且新生成的D本身也是一个含有6项元素的序列。

你可能感兴趣的:(NumPy(索引、array合并与分割))