如何使用一个pthon包将Matlab中的样条转换为python?

2024-06-12 16:26:44 发布

您现在位置:Python中文网/ 问答频道 /正文

我在matlab中使用了interp1方法spline,在python包中有函数可以代替它吗?你知道吗

我用kind='cubic'在scipy中尝试了interp1d,但是用spline方法在matlab中用interp1得到了不同的结果,虽然不是很大。你知道吗

我发现有人说InterplotationUnivariateSplinek=3的interp1d和kind='cubic'的interp1d是一样的,是真的吗?那CubicSpline呢?在文档中,他们说得到的样条曲线将与splrep(s=0)和InterpolatedUnivariateSpline返回的样条曲线相同,但他们也说它不使用像splrep(s=0)和InterpolatedUnivariateSpline这样的B样条曲线基。你知道吗

Matlab代码:

ppx = interp1(samplez,samplex,'spline','pp');
interpx = ppval(ppx,interpz);

python代码:

from scipy import interpolate
interplinex = interpolate.interp1d(samplez, samplex, kind='cubic')
interpx = interplinex(interpz)

Matlab中名为interpx的结果与python中名为interpx的结果不同


Tags: 方法代码scipy曲线样条splinematlabkind