np.vstack:按垂直方向(行顺序)堆叠数组构成一个新的数组

  1. In[3]:
  2. import numpy as np
  3. In[4]:
  4. a = np.array([[1,2,3]])
  5. a.shape
  6. Out[4]:
  7. (1, 3)
  8. In [5]:
  9. b = np.array([[4,5,6]])
  10. b.shape
  11. Out[5]:
  12. (1, 3)
  13. In [6]:
  14. c = np.vstack((a,b)) # 将两个(1,3)形状的数组按垂直方向叠加
  15. print(c)
  16. c.shape # 输出形状为(2,3)
  17. [[1 2 3]
  18. [4 5 6]]
  19. Out[6]:
  20. (2, 3)
  21. In [7]:
  22. a = np.array([[1],[2],[3]])
  23. a.shape
  24. Out[7]:
  25. (3, 1)
  26. In [9]:
  27. b = np.array([[4],[5],[6]])
  28. b.shape
  29. Out[9]:
  30. (3, 1)
  31. In [10]:
  32. c = np.vstack((a,b)) # 将两个(3,1)形状的数组按垂直方向叠加
  33. print(c)
  34. c.shape # 输出形状为(6,1)
  35. [[1]
  36. [2]
  37. [3]
  38. [4]
  39. [5]
  40. [6]]
  41. Out[10]:
  42. (6, 1)

np.hstack:按水平方向(列顺序)堆叠数组构成一个新的数组

  1. In[11]:
  2. a = np.array([[1,2,3]])
  3. a.shape
  4. Out[11]:
  5. (1, 3)
  6. In [12]:
  7. b = np.array([[4,5,6]])
  8. b.shape
  9. Out[12]:
  10. (1, 3)
  11. In [16]:
  12. c = np.hstack((a,b)) # 将两个(1,3)形状的数组按水平方向叠加
  13. print(c)
  14. c.shape # 输出形状为(1,6)
  15. [[1 2 3 4 5 6]]
  16. Out[16]:
  17. (1, 6)
  18. In [17]:
  19. a = np.array([[1],[2],[3]])
  20. a.shape
  21. Out[17]:
  22. (3, 1)
  23. In [18]:
  24. b = np.array([[4],[5],[6]])
  25. b.shape
  26. Out[18]:
  27. (3, 1)
  28. In [19]:
  29. c = np.hstack((a,b)) 将两个(3,1)形状的数组按水平方向叠加
  30. print(c)
  31. c.shape # 输出形状为(3,2)
  32. [[1 4]
  33. [2 5]
  34. [3 6]]
  35. Out[19]:
  36. (3, 2)