重塑仅具有一维的numpy数组

重塑仅具有一维的numpy数组,第1张

重塑仅具有一维的numpy数组

首先,这

np.array([i for i in range(0, 12)])
是一种不太优雅的说法
np.arange(12)

其次,您可以传递

-1
到一维整形(函数
np.reshape
和方法
np.ndarray.reshape
)。就您而言,如果您知道总大小是3的倍数,请执行

np.arange(12).reshape(-1, 3)

得到一个4x3的阵列。从文档:

一个形状尺寸可以为-1。在这种情况下,该值是根据数组的长度和其余维来推断的。

作为一个侧面说明,你得到错误的原因是,普通除法,即使是整数,自动导致

float
在Python 3:
type(12 /3)
float
。您可以通过
a.shape[0] // 3
使用整数除法来使原始代码正常工作。话虽这么说,使用
-1
起来更加方便。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5587677.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-15
下一篇 2022-12-15

发表评论

登录后才能评论

评论列表(0条)

保存