我正在Python中寻找动态增长的向量,因为我事先不知道它们的长度。此外,我想计算这些稀疏向量之间的距离,最好使用 scipy.spatial.distance 中的距离函数(尽管欢迎任何其他建议)。有什么想法如何做到这一点?(最初,它不需要高效。)
预先非常感谢!
我正在尝试生成这样的热图。
我只想有一种颜色,从值较小的白色到值较高的其他颜色。
我尝试将 cmap 设置为一种颜色,但最终结果仍然是一张可以看到不同颜色(蓝色、红色等)的地图。
我怎样才能做到这一点?另外,这些值是否需要在特定范围内?
您好,我有数据集(麦克斯韦和高斯),我用它们绘制直方图。我使用 scipy.stats.chisquare 拟合数据,但默认情况下,自由度为 0。如果我理解正确,这是不可能的,对吗?
我必须从csv文件中读取多个数据,当我想从csv数据反转矩阵时,我得到了这个:
numpy.linalg.linalg.LinAlgError: singular matrix
Run Code Online (Sandbox Code Playgroud)
并且该过程卡在此部分:
J = np.mat([dtdx,dtdy,dtdz]).transpose()
dd = np.mat(ttcal-tt)
dm = (scipy.linalg.inv(J.transpose()*J))*((J.transpose())*(dd.transpose()))
Run Code Online (Sandbox Code Playgroud)
来自“J”的数据如下:
[[-6.81477651e-03 -7.90320450e-03 6.50533437e-05]
[-6.71080644e-03 -6.00135428e-03 6.50533437e-05]]
Run Code Online (Sandbox Code Playgroud)
来自“dd”的数据如下:
[[0.00621772 0.00537531]]
Run Code Online (Sandbox Code Playgroud)
我已经检查了这些数据,我发现了这一点:
tes = J.transpose()*J
Run Code Online (Sandbox Code Playgroud)
结果如下:
[[ 9.14761019e-05 9.41324993e-05 -8.79884397e-07]
[ 9.41324993e-05 9.84768945e-05 -9.04538042e-07]
[-8.79884397e-07 -9.04538042e-07 8.46387506e-09]]
Run Code Online (Sandbox Code Playgroud)
我需要反转这个矩阵,但这个数据是奇异矩阵。我必须尝试在 matlab r2017b 上运行并且运行良好。
我需要在python上解决这个问题。
scipy.optimize 模块具有 scipy.optimize.minimize,它允许找到最小化目标函数的值。但是没有 scipy.optimize.maximize。为什么?如何使用 SciPy 解决最大化问题?
我有一堆图像,看起来像下面的图像,边缘厚度各不相同。
我想通过 python scipy.optimize.curve_fit 函数将正弦函数拟合到这个图像。然而,如图所示,条纹图案仅限制在圆形区域内。那我该如何进行拟合呢?
我想将此 MATLAB 代码翻译成 Python,我想我做的一切都是正确的,即使我没有得到相同的结果。
MATLAB 脚本:
n=2 %Filter_Order
Wn=[0.4 0.6] %# Normalized cutoff frequencies
[b,a] = butter(n,Wn,'bandpass') % Transfer function coefficients of the filter
Run Code Online (Sandbox Code Playgroud)
蟒蛇脚本:
import numpy as np
from scipy import signal
n=2 #Filter_Order
Wn=np.array([0.4,0.6]) # Normalized cutoff frequencies
b, a = signal.butter(n, Wn, btype='band') #Transfer function coefficients of the filter
Run Code Online (Sandbox Code Playgroud)
a MATLAB 中的系数: 1, -5.55e-16, 1.14, -1.66e-16, 0.41
a Python中的系数: 1, -2.77e-16, 1.14, -1.94e-16, 0.41
难道这只是一个精度问题,因为两个不同的值(第二个和第四个)都在10^(-16)?!
b另一方面,系数是相同的。
当我尝试使用 Scipy.misc.imsave('path',image) 保存图像时。
我收到此错误:模块 'scipy.misc' 没有属性。
我正在 Ubuntu 17.10 上工作,并且安装了枕头和 scipy。你能帮我吗。
我想计算的Gradient,并Hessian与各变量以下功能x和y。任何人都可以帮忙吗?非常感谢。
我从github 中找到了一个用于计算 Rosenbrock 函数的相关代码。
def objfun(x,y):
return 10*(y-x**2)**2 + (1-x)**2
def gradient(x,y):
return np.array([-40*x*y + 40*x**3 -2 + 2*x, 20*(y-x**2)])
def hessian(x,y):
return np.array([[120*x*x - 40*y+2, -40*x],[-40*x, 20]])
Run Code Online (Sandbox Code Playgroud)
更新:
from sympy import symbols, hessian, Function, N
x, y = symbols('x y')
f = symbols('f', cls=Function)
f = (1/2)*np.power(x, 2) + 5*np.power(y, 2) + (2/3)*np.power((x-2), 4) + 8*np.power((y+1), 4)
H = hessian(f, [x, y]).subs([(x,1), (y,1)])
print(np.array(H))
print(N(H.condition_number()))
Run Code Online (Sandbox Code Playgroud)
输出:
[[9.00000000000000 0] …Run Code Online (Sandbox Code Playgroud) 我试着制造一些柏林噪音,但用
from scipy.misc import toimage
我收到一个导入错误:
Traceback (most recent call last): File "C:\Perlintest.py", line 3, in <module> from scipy.misc import toimage ImportError: cannot import name 'toimage' from 'scipy.misc' (C:\Packages\PythonSoftwareFoundation.Python.3.8_qbz5n2kfra8p0\LocalCache\local-packages\Python38\site-packages\scipy\misc\__init__.py)
python ×10
scipy ×10
numpy ×3
cv2 ×1
data-fitting ×1
distance ×1
matlab ×1
matplotlib ×1
statistics ×1
sympy ×1
vector ×1