gpt4 book ai didi

python - 在 numpy (Python) 中相当于 Matlab 'ismember'?

转载 作者:太空狗 更新时间:2023-10-29 18:06:53 26 4
gpt4 key购买 nike

<分区>

我正在努力为使用 ismember 的特定 Matlab 编码“模式”找到 Numpy 等价物 | .

不幸的是,这段代码往往是大部分时间花在我的 Matlab 脚本上的地方,所以我想找到一个有效的 Numpy 等价物。

基本模式包括将子集映射到更大的网格上。我有一组存储为并行数组的键值对,我想将这些值插入到以相同方式存储的更大的键值对列表中。

具体来说,我有季度 GDP 数据,我将其映射到月度时间网格,如下所示。

quarters = [200712 200803 200806 200809 200812 200903];
gdp_q = [10.1 10.5 11.1 11.8 10.9 10.3];
months = 200801 : 200812;
gdp_m = NaN(size(months));
[tf, loc] = ismember(quarters, months);
gdp_m(loc(tf)) = gdp_q(tf);

请注意,并非所有季度都出现在月份列表中,因此 tfloc 变量都是必需的。

我在 StackOverflow 上看到过类似的问题,但它们要么只是提供纯 Python 解决方案(here),要么在使用 numpy 的地方不返回 loc 参数(here)。

在我的特定应用领域,这种特定的代码模式往往会反复出现并占用我函数的大部分 CPU 时间,因此高效的解决方案对我来说非常重要。

也欢迎提出意见或重新设计建议。

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