python中的快速矩阵生成,包括python风格和matlab风格的支持

matgen的Python项目详细描述


MatGen

介绍

在 Python 中快速构建矩阵的方法。

软件功能

基于 numpy.stack 的构造

提供了两个语法糖类,分别是 VerticalStackerHorizontalStacker,以及对应的一个实例,分别是 v_h_。对 v_h_ 进行 __getitem__ 访问,效果完全等同于 numpy.vstacknumpy.hstack

示例

>>>v_[np.array([1,2,3]),h_[[[4,5],[4,5]],[[6],[6]]],np.zeros((2,3)),np.eye(3)][[1.2.3.][4.5.6.][4.5.6.][0.0.0.][0.0.0.][1.0.0.][0.1.0.][0.0.1.]]

基于 MATLAB 风格的解释器

提供一个函数 M_ 通过解析字符串的形式来构建矩阵,支持部分 MATLAB 语法和 Python 语法。该字符串的组成形式如下:

[* * ... *;
 * * ... *;
     ...  ;
 * * ... *]

其中 * 代表一个元素,该元素可以是一个数字,可以是上述的矩阵(矩阵嵌套),还可以是一个 python 表达式。注意,如果该 python 表达式包含 [*] 符号,会使解释器产生误解(这是由于两种语言风格混合在一起导致的),例如 arr[1,2],解释器不知道这里是两个元素还是对 arr 的切片。如果你想表达这是一个 python 表达式,请用括号将它们包括起来,即写成 (arr[1,2])

示例

>>>M_('[1 2 3; np.zeros((2, 2)), np.array([[1, 2]]).T]')[[1.2.3.][0.0.1.][0.0.2.]]

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

推荐PyPI第三方库


热门话题
Java中的开源字典组件   即使在成功执行删除查询之后,java更新的列表也不会显示在jsp页面中   java Apache:无法启动上下文路径/网站上的失败应用程序   java验证CSV中的特定列   对于具有专用内存的java应用程序,最小堆大小低于最大堆大小有意义吗?   java将数组中的值转换为多维数组   java在给定程序中,垃圾收集器在对象被取消引用之前正在运行。。。使用jre 7(32位)   java在运行时动态刷新文件夹   eclipse如何解决“java.net.BindException:地址已在使用:JVM_Bind”错误?   Java数组与数组   每次任务完成任务时,Java多线程都会安排任务   java部分编译时使用maven编织第三方jar   java Dokku单一回购中的多个应用程序   用apachevelocity生成javac/C++语言文件   java如何使用spring应用程序上下文中的属性文件实例化列表   java访问智能卡文件结构   具有GlobalMethodSecurity的java自定义UserDetailService循环引用   java如何集成Spring和JSF