[英]Alternative to scipy and numpy for linear algebra?
是否有一个很好的(小而轻的)替代 numpy for python 来做线性代数? 我只需要矩阵(乘法、加法)、逆矩阵、转置矩阵等。
为什么?
我厌倦了尝试安装 numpy/scipy - 让它工作真是太糟糕了 - 它似乎从来没有正确安装(尤其是因为我有两台机器,一台 linux 和一台 windows):不管我做什么:编译它或从预先构建的二进制文件安装。 制作一个可以正常工作的“普通”安装程序有多难?
听说过,我也去过。 Numpy/scipy 是非常棒的库,遗憾的是安装问题在使用时经常遇到问题。
此外,据我所知,也没有很多好的(更易于使用)选项。 我所知道的对您来说唯一可能更简单的解决方案是“另一个矩阵模块” (请参阅 python.org 上的NumericAndScientific/Libraries列表)。 我不知道这个库的状态(稳定性、速度等)。 可能是,从长远来看,您的需求将超过任何简单的库,无论如何您最终都会安装 numpy。
使用任何其他库的另一个显着缺点是您的代码可能与 numpy 不兼容,而 numpy 恰好是 Python 中线性代数的事实上的库。 还要注意 numpy 已经过大量优化 - 速度是其他库无法保证的。
我真的只是在解决安装/设置问题上付出更多努力。 替代方案可能要糟糕得多。
鉴于您的问题,我决定从我使用它的地方提取矩阵代码,并将其放在一个可公开访问的地方 -
所以,这基本上是一个 Matrix 类的纯 python ad-hoc 实现,它可以执行加法、乘法、矩阵行列式和矩阵求逆——应该有一些用处——
由于它是纯 Python 编写的,并且完全不担心性能,因此它不适合任何实际计算 - 但它足以以交互方式处理矩阵,或者矩阵代数远不是代码的关键部分.
存储库在这里, https://bitbucket.org/jsbueno/toymatrix/
你可以直接从这里下载: https : //bitbucket.org/jsbueno/toymatrix/downloads/toymatrix_0.1.tar.gz
对于仍然有问题的人:尝试 python 便携式: http : //portablepython.com/wiki/Download/
你有没有试过蟒蛇? https://www.anaconda.com/download这应该允许它轻松安装这些软件包。
conda install -c conda-forge scipy
conda install -c conda-forge numpy
除了为您提供一种在 linux/mac/linux 中安装它们的简单方法之外,您还将获得虚拟环境管理
看一看:tinynumpy、tinyarray 和 sympy
我有时会遇到这个问题..不确定这是否有效,但我经常使用自己的帐户安装它,然后尝试在 IDE(在我的情况下为 komodo)中运行它,但它不起作用。 就像您的问题一样,它说找不到它。 我解决这个问题的方法是使用sudo -i
进入 root 然后从那里安装它。
如果这不起作用,您能否更新您的答案,以提供有关您使用的系统类型(linux、mac、windows)、python/numpy 版本以及您如何访问它的更多信息,以便更容易获得帮助。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.