草庐IT

pagerank_numpy

全部标签

python - Numpy 二维移动平均线

我有一个二维numpy数组。我想对每个条目取最近的n个条目的平均值,就像对一维数组取滑动平均值一样。最干净的方法是什么? 最佳答案 这与将滤镜应用于图像的概念类似。幸运的是,scipy.ndimage.filters有一堆功能可以做到这一点。你要找的是scipy.ndimage.uniform_filter.可以这样使用:a=>array([[0.,1.,2.,3.,4.],[5.,6.,7.,8.,9.],[10.,11.,12.,13.,14.],[15.,16.,17.,18.,19.],[20.,21.,22.,23.,24

python - NumPy 百分位函数不同于 MATLAB 的百分位函数

当我尝试在MATLAB中计算第75个百分位数时,得到的值与在NumPy中得到的值不同。MATLAB:>>x=[11.308;7.2896;7.548;11.325;5.7822;9.6343;7.7117;7.3341;10.398;6.9675;10.607;13.125;7.819;8.649;8.3106;12.129;12.406;10.935;12.544;8.177]>>prctile(x,75)ans=11.3165Python+NumPy:>>>importnumpyasnp>>>x=np.array([11.308,7.2896,7.548,11.325,5.7822

python - Numpy 将标量转换为数组

我根据x数组计算任意表达式,例如3*x**2+4。这通常会产生一个具有x形状的数组。但是,如果表达式只是一个常量,它会返回一个标量。在不显式检查形状的情况下确保它具有x形状的最佳方法是什么?乘以numpy.ones(x.shape)可行,但我认为这使用了不必要的计算。编辑:需要明确的是,我不只是希望它是一个大小为1的数组,我希望它的形状和大小与X相同。我正在使用NumExpr评估一个字符串,它可以包含x的任意函数:x=numpy.linspace(min,max,num)y=numexpr.evaluate(expr,{'x':x},{})我想获得一个y值数组,可以通过matplotl

python - 从给定的 numpy 数组创建 block 对角 numpy 数组

我有一个列数和行数相等的二维numpy数组。我想将它们排列成一个更大的阵列,对角线上有较小的阵列。应该可以指定起始矩阵在对角线上的频率。例如:a=numpy.array([[5,7],[6,3]])因此,如果我希望这个数组在对角线上出现2次,则所需的输出将是:array([[5,7,0,0],[6,3,0,0],[0,0,5,7],[0,0,6,3]])3次:array([[5,7,0,0,0,0],[6,3,0,0,0,0],[0,0,5,7,0,0],[0,0,6,3,0,0],[0,0,0,0,5,7],[0,0,0,0,6,3]])对于任意大小的起始数组(仍然考虑起始数组具有相

python - 为什么 numpy 计算不受全局解释器锁的影响?

我正在尝试决定是应该使用多处理还是线程,并且我已经了解了一些关于GlobalInterpreterLock的有趣信息。.在这个不错blogpost,似乎多线程不适合繁忙的任务。但是,我还了解到某些功能(例如I/O或numpy)不受GIL的影响。谁能解释为什么,以及我如何才能确定我的(可能相当numpy-heavy)代码是否适合多线程? 最佳答案 许多numpy计算不受GIL的影响,但不是全部。虽然在不需要Python解释器的代码(例如C库)中,可以专门释放GIL-允许依赖于解释器的其他代码继续运行。在NumpyC代码库中,宏NPY_

python - numpy dtype 中的 > < 符号是什么意思?

dtype='f'之间有什么区别?,dtype='f4',dtype='>f4',dtype'?docsontypes中未解释语法(除了'f'是'float32'的简写);它在records上的页面中被广泛使用但是>的意思/也在那里无法解释。经过一些实验我发现In[13]:a=np.array([1.0],dtype='f')In[15]:print(a.dtype)float32和In[16]:a=np.array([1.0],dtype='但是In[18]:a=np.array([1.0],dtype='>f4')In[19]:print(a.dtype)>f4这让我相信它们是不等

python - tensorflow 中 numpy.newaxis 的替代方案是什么?

您好,我是tensorflow的新手。我想在tensorflow中实现以下python代码。importnumpyasnpa=np.array([1,2,3,4,5,6,7,9,0])print(a)##[123456790]print(a.shape)##(9,)b=a[:,np.newaxis]###wanttowritethisintensorflow.print(b.shape)##(9,1) 最佳答案 对应的命令是tf.newaxis(或者None,在numpy中)。它在tensorflow的文档中没有自己的条目,但在tf

python - numpy 字符数组到字符串

我有一个2Dnumpychar数组(来自NetCDF4文件),它实际上表示一个字符串列表。我想将其转换为字符串列表。我知道我可以使用join()将字符连接成一个字符串,但我一次只能找到一种方法来完成这个字符串:data=np.array([['a','b'],['c','d']])forrowindata[:]:print''.join(row)但是速度很慢。如何在单个命令中返回字符串数组?谢谢 最佳答案 列表理解是最“pythonic”的方式。最“numpythonic”的方式是:>>>data=np.array([['a','b

python - Mac 10.8.2 上的 Numpy 安装

我在MacOS10.8.2上运行python2.6,并尝试安装Numpy以使用NLTK。我已经查看了下面突出显示的几种方法,但我还没有成功安装该软件包。我已经按照this安装了xcode建议,但这并没有解决任何问题。我试过了buildingdirectly,使用pythonsetup.pybuild--fcompiler=gnu95返回以下消息RuntimeError:Brokentoolchain:cannotlinkasimpleCprogram直接安装,我从here下载了dmg文件.直接解压文件时,numpy提示需要安装Python2.6或更高版本,因此也失败了。我在某处读到Ma

python - 如何确定矩阵在 python-numpy 中是否是奇异的?

这个问题在这里已经有了答案:Efficient&pythoniccheckforsingularmatrix(4个答案)关闭9年前。我不确定python-numpy是否可以帮助我们判断一个矩阵是否是奇异矩阵。我试图根据行列式做出决定,但numpy正在产生一些大约1.e-10的值,并且不确定我们应该选择什么作为临界值。