# -*- coding: utf-8 -*-
"""
Created on Sat Jan 12 19:58:59 2019
@author: shenfangyuan
"""
import numpy as np
a = np.array(range(12)) #首先生成一个1维数据
b = a.reshape((-1,2)) #然后用reshape改变成你需要的维度数据
c = np.tile(b,2)
d = np.tile(b,(2,3))
#默认的堆叠方式axis=0是从上至下堆叠,axis=1是从左向右堆叠
a1 = np.array(range(0,6))
a2 = np.array(range(6,12))
a3 = np.array(range(12,18))
a4 = np.array([a1,a2,a3]) #从上向下堆叠
a5 = a4.T #相当于从左向右 ,转置计算的代价也不小.
c20 = np.stack([a1,a2,a3],axis=0) #自上向下堆叠,axis=0 从上向下
c21 = np.stack([a1,a2,a3],axis=1) #自左向右堆叠,axis=1 从左向右
c30 = np.vstack([a1,a2,a3]) # 从上向下堆叠
c40 = np.hstack([a1,a2,a3]) # 从左向右对鞋
d0 = np.tile([a1,a2,a3],0) #空矩阵,毫无价值
d1 = np.tile([a1,a2,a3],1) #首先实现从上向下堆叠
d2 = np.tile([a1,a2,a3],(2,3)) #首先实现从上向下堆叠,然后在上下方向重复2次,从左向右重复3次