gpt4 book ai didi

Python:使用负函数比较元胞数组

转载 作者:行者123 更新时间:2023-11-28 16:32:16 25 4
gpt4 key购买 nike

我有 3 个元胞数组,每个元胞数组都有不同大小的数组。如何为每个可能的元胞数组组合执行负函数?

例如:

import numpy as np
a=np.array([[np.array([[2,2,1,2]]),np.array([[1,3]])]])
b=np.array([[np.array([[4,2,1]])]])
c=np.array([[np.array([[1,2]]),np.array([[4,3]])]])

此处可能的组合是 a-b、a-c 和 b-c。
假设 a - b:

a=2,2,1,2 and 1,3

b=4,2,1


由于数组大小不同,期望的结果伴随着移动窗口:

(2,2,1)-(4,2,1) ----> -2,0,0
(2,1,2)-(4,2,1) ----> -2,-1,1
(1,3) -(4,2) ----> -3,1,1
(1,3) -(2,1) ----> 4,-1,2

我想知道如何使用 python 创建移动窗口,使我能够减去元胞数组。

最佳答案

您可以使用函数 sliding_window()来自 toolz library做移动窗口:

>>> import numpy as np
>>> import toolz
>>> a = np.array([2,2,1,2])
>>> b = np.array([4, 2, 1])
>>> for chunk in toolz.sliding_window(b.size, a):
...: print(chunk - b)
...:
[-2 0 0]
[-2 -1 1]

关于Python:使用负函数比较元胞数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30678737/

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