У меня есть набор данных, который похож на данные, созданные в MWE ниже:
from matplotlib import pyplot as plt
import numpy as np
sz=100
x = np.linspace(-1, 1, sz)
mean = -np.sign(x)
noise = np.random.randn(*x.shape)
K = -2
y_true = K*x
y = y_true + mean + noise
plt.scatter(x, y, label="Data with error")
plt.plot(x, y_true, "-", label="True line")
plt.grid()
То есть ошибки вокруг строки Iхочу, чтобы в основном отрицательные для х> 0 и в основном положительные для х <0.То, что я ищу, - это способ оценить коэффициент K (который в данном случае равен -2). </p>
На самом деле я думаю, что способ сделать это - минимизировать ошибку только точек, которые падаютвыше линии для x <0 и ниже линии для x> 0, но я не уверен, как эффективно это сделать в Python, поскольку все, что я могу придумать, включает в себя итерационные процессы, которые в Python медленны.