当前位置: 代码迷 >> 综合 >> 自用--np.stack(), np.vstack(), np.hstack()
  详细解决方案

自用--np.stack(), np.vstack(), np.hstack()

热度:19   发布时间:2023-10-27 03:02:34.0
  1. np.stack(list or tuple , axis=0, out=None)
    axis写的是哪个维度,就在哪个维度插入叠加的数组的总数
    >>> arrays = [np.random.randn(3, 4) for _ in range(10)] # 产生一个list,包含10个shape为(3,4)的数组>>> np.stack(arrays, axis=0).shape  # 共10个, 10插入第0维(10, 3, 4)>>> np.stack(arrays, axis=1).shape # 共10个, 10插入第1维(3, 10, 4)>>> np.stack(arrays, axis=2).shape # 共10个, 10插入第2维(3, 4, 10)
  1. np.vstack(list or tuple)
    垂直堆叠数组
    >>> a = np.array([1, 2, 3])  # 
    >>> b = np.array([2, 3, 4])
    >>> np.vstack((a,b)) # 两个[1,3]垂直堆叠 --> [2,3]
    array([[1, 2, 3],[2, 3, 4]])>>> a = np.array([[1], [2], [3]]) # 两个[3,1]垂直堆叠 --> [6,1]
    >>> b = np.array([[2], [3], [4]])
    >>> np.vstack((a,b))
    array([[1],[2],[3],[2],[3],[4]])
    
  2. np.vstack(list or tuple)
    水平堆叠数组
    >>> a = np.array((1,2,3))>>> b = np.array((2,3,4))>>> np.hstack((a,b))array([1, 2, 3, 2, 3, 4])>>> a = np.array([[1],[2],[3]])>>> b = np.array([[2],[3],[4]])>>> np.hstack((a,b))array([[1, 2],[2, 3],[3, 4]])
  相关解决方案