草庐IT

python - 用 numpy/scipy 卸载吞咽

有没有人将unladen-swallow与numpy/scipy一起用于数字/科学应用程序?根据您的经验,它明显更快吗?任何意见都会很棒。 最佳答案 目前还没有人对UnladenSwallow有丰富的经验(开发人员除外),因此很难找到可以讨论它的人。此外,随着关于将UnladenSwallow(使用LLVM构建)与CPython运行时合并的讨论,在一切变得更加稳定之前,事情将成为一个移动的目标。有可用于UnladenSwallow的基准测试,但不包括numpy和scipy。Asthedevelopersthemselvesexpla

python - 从多个线程调用 NumPy 的 C API 函数有什么含义?

这是一项冒险的工作,我知道全局解释器锁是并行性的一个可怕敌人。但是,如果我使用NumPy'sCAPI(特别是NumPy数组上的PyArray_DATA宏),从多个并发线程调用它是否有潜在的后果?请注意,我仍将拥有GIL,并且不会与NumPy'sthreadingsupport一起发布它.此外,即使NumPy不保证线程安全,但PyArray_DATA在实践中是线程安全的,这对我来说已经足够了。我在Linux上运行Python2.6.6和NumPy1.3.0。 最佳答案 在这里回答我自己的问题,但在深入了解NumPy1.3.0的源代码后

python - 寻找用于在镶嵌域上进行数值积分的 Python 包

我想知道是否有人知道基于numpy/scipy的python包可以在镶嵌域(在我的特定情况下,由voronoi单元界定的2D域)上对复杂的数值函数进行数值积分?过去我使用了几个来自matlab文件交换的包,但如果可能的话我想留在我当前的python工作流程中。matlab例程是http://www.mathworks.com/matlabcentral/fileexchange/9435-n-dimensional-simplex-quadrature正交和网格生成使用:http://www.mathworks.com/matlabcentral/fileexchange/25555-

python - 如何为 C 分配的 numpy 数组注册析构函数?

我想在C/C++中为一个numpy数组分配数字,并将它们作为一个numpy数组传递给python。我可以用PyArray_SimpleNewFromData来做.问题是我还想注册一个函数,当numpy数组引用计数器达到零时应该从Python调用该函数,并且会在C端调用一些析构函数语义......这是一个伪示例我需要什么:float*arr;PyObject*np_arr;void(*destructor)(float*arr);//...C-allocatearrayonarr,...//...//...initializedestructorwithsomesuitablevalue

python - 以更快的方式转换 numpy 数组中的字符串列表

br是字符串列表的名称,如下所示:['140.000000--(longterm0.000000)\n','190.000000--(longterm0.000000)\n','220.000000--(longterm0.000000)\n',...我对前两列感兴趣,我想将其转换为numpy数组。到目前为止,我提出了以下解决方案:x=N.array([0.,0.])foriinbr:x=N.vstack((x,N.array(map(float,i.split()[:2]))))这会产生一个二维数组:array([[0.,0.],[14.,0.],[19.,0.],[22.,0.],

Python numpy 计算第一个特征值和特征向量

我想知道是否有一个Python包(numpy或其他)具有计算小矩阵(比如2x2)的第一个特征值和特征向量的函数。我可以按如下方式在numpy中使用linalg包。importnumpyasnpdefwhatever():A=np.asmatrix(np.rand(2,2))evals,evecs=np.linalg.eig(A)#Assumethattheeigenvaluesareorderedfromlargetosmallandthatthe#eigenvectorsareorderedaccordingly.returnevals[0],evecs[:,0]但这需要很长时间。我

python - python中直方图的概率密度函数以拟合另一个直方图

我有一个关于拟合和获取随机数的问题。情况是这样的:首先,我有一个来自数据点的直方图。importnumpyasnp"""createrandomdatapoints"""mu=10sigma=5n=1000datapoints=np.random.normal(mu,sigma,n)"""createnormalizedhistrogramofthedata"""bins=np.linspace(0,20,21)H,bins=np.histogram(data,bins,density=True)我想将此直方图解释为概率密度函数(带有例如2个自由参数),以便我可以使用它来生成随机数,并

c++ - 使用 Boost-Python 计算 python 中定义的函数的导数

我想编写一个Boost-Python程序,从用户那里获取一个符号python函数,并在我的程序中评估它的导数。例如,用户提供了一个python文件(Function.py),它定义了一个函数,例如F=sin(x)*cos(x).然后我想使用Sympy的符号微分能力来访问F'(x)(F(x)的导数)。我不想使用数值微分。有没有一种方法可以使用Boost-Python在C++中访问这样的函数F'(x)。 最佳答案 这里有一些代码可以帮助您入门。主要.cpp:#include#includeusingnamespaceboost::pyt

python - matplotlib:故意阻止代码执行等待 GUI 事件

有什么方法可以让matplotlib阻止等待matplotlib.backend_bases.Event的代码执行?我一直在研究一些在matplotlib图形中交互式绘制线条和多边形的类,遵循theseexamples.我真正想做的是阻止执行,直到我完成对多边形的编辑,然后获取顶点的最终位置-如果您熟悉MATLAB,我基本上是在尝试复制position=wait(roihandle)语法,例如here.我想我可以在发生按键时设置我的交互式多边形对象的一些类属性,然后在我的脚本中重复轮询该对象以查看事件是否已经发生,但我希望有更好的方法。 最佳答案

python - 从 numpy 数组创建 pydicom 文件

我正在尝试从标准尺寸(512x512或256x256)numpy数组创建一个新的dicom图像。importdicom,dicom.UIDfromdicom.datasetimportDataset,FileDatasetdefwrite_dicom(pixel_array,filename):file_meta=Dataset()ds=FileDataset(filename,{},file_meta=file_meta,preamble="\0"*128)ds.PixelData=pixel_array.tostring()ds.save_as(filename)returnif_