草庐IT

scipy-optimize

全部标签

python - 如何显示 scipy.optimize 函数的进度?

我使用scipy.optimize来最小化一个有12个参数的函数。我刚开始优化,还在等待结果。有没有办法强制scipy.optimize显示其进度(例如已经完成了多少,当前的最佳点是什么)? 最佳答案 正如mg007所建议的,一些scipy.optimize例程允许回调函数(不幸的是,leastsq目前不允许这样做)。下面是一个使用“fmin_bfgs”例程的示例,其中我使用回调函数来显示参数的当前值和每次迭代时目标函数的值。importnumpyasnpfromscipy.optimizeimportfmin_bfgsNfeval

python - 属性错误 : 'module' object (scipy) has no attribute 'misc'

我从ubuntu12.04更新到ubuntu12.10并且我编写的python模块突然不再适用于模块scipy没有属性“misc”的错误消息。这以前有效。更新后我仍在使用python2.7。这是代码崩溃的地方importscipyscipy.misc.imsave(slice,dat)有什么想法吗? 最佳答案 >>>importscipy>>>scipy.miscTraceback(mostrecentcalllast):File"",line1,inAttributeError:'module'objecthasnoattribu

python - 如何在 scipy/matplotlib 中绘制和注释层次聚类树状图

我正在使用scipy中的dendrogram来使用matplotlib绘制层次聚类,如下所示:mat=array([[1,0.5,0.9],[0.5,1,-0.5],[0.9,-0.5,1]])plt.subplot(1,2,1)plt.title("mat")dist_mat=matlinkage_matrix=linkage(dist_mat,"single")print"linkage2:"printlinkage(1-dist_mat,"single")dendrogram(linkage_matrix,color_threshold=1,labels=["a","b","c"

python - 遍历 scipy.sparse 向量(或矩阵)

我想知道最好的方法是用scipy.sparse迭代稀疏矩阵的非零条目。例如,如果我执行以下操作:fromscipy.sparseimportlil_matrixx=lil_matrix((20,1))x[13,0]=1x[15,0]=2c=0foriinx:printc,ic=c+1输出是012345678910111213(0,0)1.01415(0,0)2.016171819所以看起来迭代器正在触及每个元素,而不仅仅是非零条目。我看过APIhttp://docs.scipy.org/doc/scipy/reference/generated/scipy.sparse.lil_mat

python - Scipy Normaltest是如何使用的?

我需要在scipy中使用normaltest来测试数据集是否为正态分布。但是我似乎找不到任何好的示例如何使用scipy.stats.normaltest.我的数据集有超过100个值。 最佳答案 In[12]:importscipy.statsasstatsIn[13]:x=stats.norm.rvs(size=100)In[14]:stats.normaltest(x)Out[14]:(1.627533590094232,0.44318552909231262)normaltest返回卡方统计量的2元组和相关的p值。给定x来自正态

python - numpy.fft 和 scipy.fftpack 有什么区别?

后者只是前者的同义词,还是它们是FFT的两种不同实现?哪个更好? 最佳答案 SciPy做得更多:http://docs.scipy.org/doc/numpy/reference/routines.fft.htmlhttp://docs.scipy.org/doc/scipy/reference/fftpack.html#此外,SciPy通过自己的接口(interface)导出一些NumPy功能,例如如果您执行scipy.fftpack.helper.fftfreq和numpy.fft.helper.fftfreq你实际上在运行相同

python - SciPy 的 optimize.minimize 中的多个变量

根据SciPydocumentation可以最小化具有多个变量的函数,但它没有说明如何优化这些函数。fromscipy.optimizeimportminimizefrommathimport*deff(c):returnsqrt((sin(pi/2)+sin(0)+sin(c)-2)**2+(cos(pi/2)+cos(0)+cos(c)-1)**2)printminimize(f,3.14/2+3.14/7)上面的代码确实尝试最小化函数f,但对于我的任务,我需要最小化三个变量。简单地引入第二个参数并相应地调整最小化会产生错误(TypeError:f()恰好需要2个参数(1个给定))

python - numpy 或 scipy 有哪些可能的计算可以返回 NaN?

关闭。这个问题需要更多focused.它目前不接受答案。想要改进这个问题吗?更新问题,使其只关注一个问题editingthispost.关闭8年前。Improvethisquestion在Python中,哪些最常见的操作会导致使用NumPy或SciPy时产生的NaN?例如:1e500-1e500>>>nan这种行为的原因是什么,为什么它不返回0? 最佳答案 如果您在不使用浮点环境的情况下执行以下任何操作,您应该得到一个以前没有的NaN:0/0(顶部和底部的任一标志)inf/inf(顶部和底部的任一标志)inf-inf或(-inf)+

python - Python Scipy 中的两个样本 Kolmogorov-Smirnov 测试

我不知道如何在Scipy中进行双样本KS测试。阅读文档后scipykstest我可以看到如何测试分布与标准正态分布相同的位置fromscipy.statsimportkstestimportnumpyasnpx=np.random.normal(0,1,1000)test_stat=kstest(x,'norm')#>>>test_stat#(0.021080234718821145,0.76584491300591395)这意味着在p值为0.76时,我们不能拒绝两个分布相同的原假设。但是,我想比较两个分布,看看是否可以拒绝它们相同的原假设,例如:fromscipy.statsimpo

python - 在 SciPy 中创建低通滤波器 - 理解方法和单元

我正在尝试使用python过滤嘈杂的心率信号。因为心率不应该高于每分钟220次,所以我想过滤掉所有高于220bpm的噪音。我将220/分钟转换为3.66666666赫兹,然后将该赫兹转换为rad/s以获得23.0383461rad/sec。获取数据的芯片的采样频率是30Hz,所以我将其转换为rad/s得到188.495559rad/s。在网上查找了一些资料后,我发现了一些我想制作成低通的带通滤波器的功能。Hereisthelinkthebandpasscode,所以我将其转换为:fromscipy.signalimportbutter,lfilterfromscipy.signalim