【发布时间】:2013-05-06 15:49:05
【问题描述】:
有一点我非常感激,那就是在 python 中命名数组中的维度的能力。例如,我有一个 3 维的 numpy 数组,我必须定期将它沿特定维度求和。
所以我可以使用 ndarray a:
sum(a, axis=2)
如果我的相关维度是最后一个,但我想让它“与位置无关”,即用户可以提供任何数组,只要他指定“这个维度是“DI””(例如,对于“Dimension出于兴趣”)。所以基本上我希望能够写:
sum(a, axis="DI")
接近 NETCDF,但我不想实现完整的 netcdf 功能。
【问题讨论】:
-
不需要问候和感谢。事实上,您甚至可以看到曾经(现在可能已经改进)用于删除它们的正则表达式here。
-
我能想到的最好方法是维护一个字典,其中包含从名称到轴号的映射。要么使用嵌套字典,要么在底部使用数组,但这可能比它的价值更麻烦(据我所知,在 numpy 中不是犹太教)。
-
你真的需要
DI是一个字符串吗?如果你让DI = 2在你的代码中的某个地方,你就可以做到np.sum(a, axis=DI)...
标签: python arrays numpy dimension axes