hstack函数把多个array组合到一起
horizontal merger 是横向合并的意思,即:保持行数不变,扩展列数
import numpy as np
dt=np.arange(5)
print("dt: ",dt)
dt=dt[:,np.newaxis]
print("dt after newaxis: \n",dt)
print("dt.shape: ",dt.shape)
df=np.hstack((dt,dt,dt))
print("df: \n",df)
print("df.shape: ",df.shape)
结果为:
dt: [0 1 2 3 4]
dt after newaxis:
[[0]
[1]
[2]
[3]
[4]]
dt.shape: (5, 1)
df:
[[0 0 0]
[1 1 1]
[2 2 2]
[3 3 3]
[4 4 4]]
df.shape: (5, 3)
注意:df=np.hstack((dt,dt,dt))
里面用括号括起来
可见,结果array的 row_dim 是5,被固定了下来,新增的elements,是要具体到子维度的,就是说,只能在"[[ ],[ ],[ ]]"内部的某个[ ]中寻找自己的位置
多合并几个,效果就更明显
df=np.hstack((dt,dt,dt,dt,dt,dt))
[[0 0 0 0 0 0]
[1 1 1 1 1 1]
[2 2 2 2 2 2]
[3 3 3 3 3 3]
[4 4 4 4 4 4]]