为什么Numpy中的0d数组不视为标量?

当然,0d数组是标量的,但是Numpy似乎并不这么认为...我是否缺少某些内容?还是我只是误解了这个概念?


>>> foo = numpy.array(1.11111111111, numpy.float64)

>>> numpy.ndim(foo)

0

>>> numpy.isscalar(foo)

False

>>> foo.item()

1.11111111111


慕丝7291255
浏览 730回答 3
3回答

眼眸繁星

您必须稍微不同地创建标量数组:>>> x = numpy.float64(1.111)>>> x1.111>>> numpy.isscalar(x)True>>> numpy.ndim(x)0从纯粹的数学观点来看,numpy中的标量看起来可能与您习惯的概念有所不同。我猜您在考虑标量矩阵?

胡子哥哥

其中很多似乎是观察事物的matlab方式- “您实际上不能增长Numpy标量” -也不能增长np.array。明确说明大小会增加意外O(N ^ 2)行为的难度。“它不能定义为ndarray” -就是np.asarray(scalar)这样。“ 1x1矩阵...” -在这里将事物视为固有的2D或矩阵是无济于事的 
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python