带标记轴的numpy数组

axarra的Python项目详细描述


标题:Axarray 作者:sylvain.guieu@gmail.com

#导言 axarray是一个可以标记轴的numpy数组。

思想是能够操纵数组,并在不知道数组形状顺序的情况下对轴进行操作,但知道与轴的“物理”含义相关的标签。

通常在科学中,用可理解的标签命名阵列轴是有用的。 例如,对于在不同时间拍摄的2d图像,获取立方体的轴名可以是[“time”,“y”,“x”]

axarray对象的目标是这样做。例如,cTIT> A.Mead(轴=“Times”)将在标号为“TIME”的轴上执行平均值。

A1和A2,即使两个Axar阵列具有不同的轴阶,只要它们具有匹配的轴标签,两个AXART阵列可以执行类似A1+A2的二进制操作。

#安装 带着皮普 ` > pip install axarray `

或者来自python路径中的git

` > git clone https://github.com/SylvainGuieu/axarray.git `

#示例

`python >>> a = axarray( np.random.random((10,4,5)), ["time", "y", "x"]) >>> b = a.transpose( ["x","time","y"]) >>> b.axes ["x","time", "y"] `

可操作2转座子阵列,只要与轴名称

匹配即可。

`python >>> (a+b).axes ["time", "y", "x"] ` 使用轴标号

的NUMPY函数

`python >>> a.min(axis="time").shape (4,5) # similar to: >>> np.min(a , axis="time") `

轴可为轴标号

`python >>> a.mean(axis=["x","y"]).shape (10,) `

可以使用方便的应用方法。在非直接调用中非常有用,例如在plot func中

`python >>> a.apply(time_reduce=np.mean, y_idx=slice(0,2)).shape (2,5) `

在一次调用中变换、重塑重命名轴的形状

`python >>> at = a.transform( [("pixel","y","x"),"time"]) >>> at.shape (20, 10)  # (4*5, 10) >>> at.axes ['pixel', 'time'] `

从命名索引中提取图像光谱

`python ### make some indices >>> iy, ix = axarray( np.indices( (3,4)), [0 ,"spatial", "freq"]) >>> ax[:,iy,ix].axes ['time', 'spatial', 'freq'] `

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java无法启动应用程序:JNLP错误   java根据用户输入在PreparedStatement中使用setTime()或setNull()   java EJB与同步   java以object为键通过hashmap进行搜索   java中的模10^9+7   针对包含其他对象的对象的java OOP最佳实践   如何将字符串作为HTML代码从Java文件读取到JSP页面?   java我的POM怎么了?“解析表达式..检测到递归表达式循环”   用于Hbase的Mapreduce的java NoSuchMethodError   JAVAlang.SecurityException:权限拒绝:启动意图{act=安卓.Intent.action.MAIN cat=[安卓.Intent.category.LAUNCHER]   数组初始化谜语Java   通过arraylist搜索时的java句柄关联