Questions tagged «scipy»

SciPy是Python编程语言的算法和数学工具的开源库。


12
Python:区分行向量和列向量
有没有一种很好的方法来区分python中的行向量和列向量?到目前为止,我正在使用numpy和scipy,到目前为止,我看到的是,如果我要给一个向量,说 from numpy import * Vector = array([1,2,3]) 他们无法说天气,我的意思是行或列向量。此外: array([1,2,3]) == array([1,2,3]).transpose() True 在“现实世界”中哪一个根本是不正确的。我意识到上述模块中向量上的大多数功能都不需要区分。例如,outer(a,b)或者a.dot(b)我想为自己的方便而与众不同。
73 python  arrays  numpy  vector  scipy 


6
稀疏的3D矩阵/数组在Python中?
在scipy中,我们可以使用scipy.sparse.lil_matrix()等构造一个稀疏矩阵。但是该矩阵是二维的。 我想知道Python中是否存在稀疏3d矩阵/数组(张量)的数据结构? ps我在3d中有很多稀疏数据,需要张量来存储/执行乘法。如果没有现有的数据结构,是否有实现此类张量的建议?


7
凝聚距离矩阵如何工作?(pdist)
scipy.spatial.distance.pdist返回一个压缩距离矩阵。从文档中: 返回一个简化的距离矩阵Y。对于每个和(其中),度量dist(u = X [i],v = X [j])并存储在条目ij中。 我以为ij是故意的i*j。但是我认为我可能是错的。考虑 X = array([[1,2], [1,2], [3,4]]) dist_matrix = pdist(X) 然后文档说dist(X[0], X[2])应该是dist_matrix[0*2]。但是,dist_matrix[0*2]是0 -而不是2.8。 我应该使用什么公式访问给定i和的两个向量的相似性j?
69 python  numpy  scipy 

4
指定指向numpy,scipy和matplotlib的Intersphinx链接的目标
在用于在软件包之间设置Sphinx文档链接的文档之后,我添加了 intersphinx_mapping = {'python': ('http://docs.python.org/2', None), 'numpy': ('http://docs.scipy.org/doc/numpy/', None), 'scipy': ('http://docs.scipy.org/doc/scipy/reference/', None), 'matplotlib': ('http://matplotlib.sourceforge.net/', None)} 对我来说conf.py,但似乎无法获得除Python本身以外的任何项目的链接。例如 :term:`svg graphics <matplotlib:svg>` 只是将我带到索引页面,而没有添加预期的#term-svg锚点,而且我什至无法找到术语表,也无法确定scipy如何确定软件包支持哪些:ref:s或:term:s。 我在哪里可以找到如何指定目标指令:ref:S和:term:S IN numpy,scipy和matplotlib? 为此,我如何链接到Sphinx本身?新增中 intersphinx_mapping['sphinx'] = ('http://sphinx-doc.org/', None) 和 :ref:`Intersphinx <intersphinx>` 不起作用。

3
查找大型稀疏矩阵的最小特征向量,在SciPy中比在八度中慢100倍以上
我正在尝试计算与大型对称方形稀疏矩阵(最大30000x30000)的最小特征值相对应的少数(5-500)特征向量,其中小于0.1%的特征值为非零。 我目前正在Shift-invert模式(sigma = 0.0)中使用scipy.sparse.linalg.eigsh,我通过有关该主题的各种帖子发现这是首选的解决方案。但是,在大多数情况下,最多需要1小时才能解决该问题。另一方面,如果我要求最大的特征值(系统中的秒数),则该功能非常快,这是文档中所期望的。 由于我对工作中的Matlab更加熟悉,因此我尝试在Octave中解决问题,这在短短几秒钟(不到10秒)内使用eigs(sigma = 0)给出了相同的结果。由于我想对包括特征向量计算在内的算法进行参数扫描,因此在python中也要具有这种时间增益。 我首先更改了参数(尤其是公差),但是在时间尺度上并没有太大变化。 我在Windows上使用Anaconda,但尝试将scipy(这是一个很大的痛苦)使用的LAPACK / BLAS从mkl(默认为Anaconda)切换为OpenBlas(根据文档由Octave使用),但看不到更改性能。 我无法弄清楚所使用的ARPACK是否需要更改(以及如何更改)? 我将以下代码的测试用例上传到了以下Dropbox文件夹:https ://www.dropbox.com/sh/l6aa6izufzyzqr3/AABqij95hZOvRpnnjRaETQmka?dl =0 在Python中 import numpy as np from scipy.sparse import csr_matrix, csc_matrix, linalg, load_npz M = load_npz('M.npz') evals, evecs = linalg.eigsh(M,k=6,sigma=0.0) 在八度音阶中: M=dlmread('M.txt'); M=spconvert(M); [evecs,evals] = eigs(M,6,0); 任何帮助都在申请中! 我根据评论和建议尝试了一些其他选项: 八度: eigs(M,6,0)和eigs(M,6,'sm')给我相同的结果: [1.8725e-05 1.0189e-05 7.5622e-06 7.5420e-07 -1.2239e-18 -2.5674e-16] …
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.