gpt4 book ai didi

python - 以 numpy 数组为对象的 Numpy 数组

转载 作者:太空宇宙 更新时间:2023-11-04 02:31:39 24 4
gpt4 key购买 nike

我想创建一个带有 ndarray 类型本身的条目的 numpy ndarray。我能够将 ndarrays 包装成另一种类型以使其工作,但我想在不包装的情况下执行此操作。将 ndarray x 包装成例如字典 {1:x} 我能做

F = np.vectorize(lambda x: {1:np.repeat(x,3)})
F(np.arange(9).reshape(3,3))

并获取 (3,3) ndarray,其中包含条目 {1:[0,0,0]} ... {1:[8,8,8]}(带有ndarrays)。当将 F 更改为 F = np.vectorize(lambda x: np.repeat(x,3)) numpy 提示 ValueError: setting an array element with a sequence 。我猜它检测到条目作为数组本身并且不再将它们作为对象威胁。

我怎样才能避免这种情况并在不将 ndarray 中的条目包装成不同的东西的情况下做同样的事情?

非常感谢您的提示:)

最佳答案

您可以(滥用)使用 numpy.frompyfunc:

>>> F = np.arange(9).reshape(3, 3)
>>> np.frompyfunc(F.__getitem__, 1, 1)(range(3))
array([array([0, 1, 2]), array([3, 4, 5]), array([6, 7, 8])], dtype=object)

关于python - 以 numpy 数组为对象的 Numpy 数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49047468/

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