我想从点集获得分段线性函数。这是视觉示例:

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


python - 如何在Python中获得分段线性函数-LMLPHP

因此,我需要一个具有两个列表并返回分段线性函数的函数。我不需要回归或任何最小二乘拟合。

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

最佳答案

尝试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增加。

关于python - 如何在Python中获得分段线性函数,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/52953030/

10-12 17:44
查看更多