python定义二维空数组_带有空第二维的数组/向量的Python / numpy问题

虽然您可以重新整形数组,并使用[:,np.newaxis]添加维度,但您应该熟悉最基本的嵌套括号或列表符号.请注意它与显示器的匹配程度.

In [230]: np.array([[0],[6]])

Out[230]:

array([[0],

[6]])

In [231]: _.shape

Out[231]: (2, 1)

np.array也接受一个ndmin参数,虽然它在开始时添加额外的维度(numpy的默认位置.)

In [232]: np.array([0,6],ndmin=2)

Out[232]: array([[0, 6]])

In [233]: _.shape

Out[233]: (1, 2)

制作2d的经典方式 – 重塑:

In [234]: y=np.arange(12).reshape(3,4)

In [235]: y

Out[235]:

array([[ 0, 1, 2, 3],

[ 4, 5, 6, 7],

[ 8, 9, 10, 11]])

sum(和相关函数)有一个keepdims参数.阅读文档.

In [236]: y.sum(axis=1,keepdims=True)

Out[236]:

array([[ 6],

[22],

[38]])

In [237]: _.shape

Out[237]: (3, 1)

空的第二维不是术语.更像是一个不存在的第二维度.

维度可以包含0个术语:

In [238]: np.ones((2,0))

Out[238]: array([], shape=(2, 0), dtype=float64)

如果您更熟悉MATLAB,它至少有2d,您可能会喜欢np.matrix子类.它需要采取措施确保大多数操作返回另一个2d矩阵:

In [247]: ym=np.matrix(y)

In [248]: ym.sum(axis=1)

Out[248]:

matrix([[ 6],

[22],

[38]])

矩阵和:

np.ndarray.sum(self, axis, dtype, out, keepdims=True)._collapse(axis)

_collapse位允许它返回ym.sum()的标量.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值