在索引中加入None
>>> import numpy as np
>a=[1,2,3,4]
>>> a=np.array(a)
>>> a
array([1, 2, 3, 4])
>>> b=a[:,None]
>>> b
array([[1],
[2],
[3],
[4]])
>>> c=a[:,None,None]
>>> c
array([[[1]],
[[2]],
[[3]],
[[4]]])
>>> a=np.ones((2,3))
>>> a
array([[1., 1., 1.],
[1., 1., 1.]])
>>> b=a[:,None,:]
>>> b
array([[[1., 1., 1.]],
[[1., 1., 1.]]])
>>> b=a[None,:,:]
>>> b
array([[[1., 1., 1.],
[1., 1., 1.]]])
在pytorch中:
>>> import torch as t
>>> a=t.from_numpy(a)
>>> a
tensor([[1., 1., 1.],
[1., 1., 1.]], dtype=torch.float64)
>>> b=a[:,None,:]
>>> b
tensor([[[1., 1., 1.]],
[[1., 1., 1.]]], dtype=torch.float64)
————————————————
原文链接:https://blog.csdn.net/weixin_43763731/article/details/96423671
可以看出,在数组索引中,加入None就相当于在对应维度加一维
但是这种方法只是在ndarray和tensor类型使用,python的list并不适用(会报错)
#numpy数据增加行、列
import numpy as np
a = np.array([[1,2,3],[4,5,6],[7,8,9]])
b = np.array([[0,0,0]])
c = np.r_[a,b]
d = np.c_[a,b.T]
print c
print d
输出结果:
[[1 2 3]
[4 5 6]
[7 8 9]
[0 0 0]]
[[1 2 3 0]
[4 5 6 0]
[7 8 9 0]]