【问题标题】:How to get piecewise linear function in Python如何在 Python 中获得分段线性函数
【发布时间】:2018-10-23 15:43:29
【问题描述】:

我想从一组点中得到分段线性函数。这是视觉示例:

import matplotlib.pyplot as plt
x = [1,2,7,9,11]
y = [2,5,9,1,11]
plt.plot(x, y)
plt.show()

所以我需要一个函数,它需要两个列表并返回分段线性函数。我不需要回归或任何类型的最小二乘拟合。

我可以尝试自己写,但想知道是否已经写了一些东西。到目前为止,我只找到返回回归的代码

【问题讨论】:

    标签: python piecewise


    【解决方案1】:

    试试 np.interp。它对值进行插值。

    这是一个小例子。

    >>> import matplotlib.pyplot as plt
    >>> import numpy as np
    
    >>> x = [1,2,7,9,11]
    >>> y = [2,5,9,1,11]
    
    >>> np.interp([1.5, 3], x, y)
    array([ 3.5,  5.8])
    

    注意事项是确保对于样本点,确保 x 增加。

    【讨论】:

    • 干得好,插值完全不在我的脑海里了。
    猜你喜欢
    • 1970-01-01
    • 2017-08-17
    • 2013-10-27
    • 1970-01-01
    • 2020-09-27
    • 2020-02-06
    • 1970-01-01
    • 2015-06-05
    • 2021-08-24
    相关资源
    最近更新 更多