【问题标题】:How to Smooth out a derivative of a function? [closed]如何平滑函数的导数? [关闭]
【发布时间】:2022-01-26 01:59:48
【问题描述】:

我有一个由 x 和 y 数组组成的数据集,绘制为 f(x)=y 当我计算 f(x) 的导数时,我得到一个噪声导数,如附图所示。 如何使用 python 平滑它?

【问题讨论】:

  • 图片是函数本身的图片以及它的n次导数,还是只是不同函数的导数?我认为我要做的第一件事可能只是删除任何异常数据,也许这会使事情变得顺利,但我认为需要更多细节。

标签: python numpy math


【解决方案1】:

总体而言,它们似乎是平滑数据的不同方法。这个帖子好像有类似的问题:Gradient in noisy data, python

其中一个答案使用来自 scipy 的函数 splev 和 splerp 来平滑曲线。这是回复:https://stackoverflow.com/a/19796063/13297560 以下是看起来相关的代码行:

from scipy.interpolate import splrep, splev
f = splrep(x, noisy_data, k=5, s=3)
plt.plot(x, splev(x,f), label="fitted")

x 似乎是域的范围,noisy_data 是输出 (y),k 和 s 是影响平滑度的可选参数。以下是相关文档:https://docs.scipy.org/doc/scipy/reference/generated/scipy.interpolate.splrep.html

【讨论】:

    猜你喜欢
    • 2011-09-15
    • 2020-12-10
    • 2018-07-08
    • 2018-09-29
    • 2015-10-17
    • 2013-05-21
    • 2017-07-04
    • 2020-04-25
    • 1970-01-01
    相关资源
    最近更新 更多