gpt4 book ai didi

python - 为什么形状是空的?

转载 作者:行者123 更新时间:2023-12-01 01:14:25 26 4
gpt4 key购买 nike

此代码创建一个 10 元素数组。

  1. 为什么尺寸是 1?不应该是0吗?
  2. 为什么形状是空的?不应该是一维吗?
    In [14]: s = np.array(10)                                                                            

In [15]: s
Out[15]: array(10)

In [16]: s.size
Out[16]: 1

In [17]: s.shape
Out[17]: ()

最佳答案

如果有人打电话np.array()在不可迭代的任意对象上,numpy 会默默地创建一个没有维度的空数组。然而,它的大小是1。

Docs of numpy size告诉我们 x.size 相当于调用 np.prod(x.shape) 。和docs for np.prod声明在空序列上调用 np.prod 会得到 1。可能是因为 1 是乘法的中性元素,含义如下。

假设你有一个数组 [4, 2, 3] 。其元素积为24 。现在将其分成两个数组:[4][2, 3] 。您有一个不错的属性(property):np.prod([4, 2, 3]) == np.prod([4]) * np.prod([2, 3]) 。但如果其中一个数组为空,您希望此属性仍然保留:np.prod([4, 2, 3]) == np.prod([]) * np.prod([4, 2, 3]) .

关于python - 为什么形状是空的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54496921/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com