Obecnie piszę definicję Pythona o nazwie f_from_data który wykorzystuje punkt interpolacji find na linii tej pory pisałem tak:Jak stworzyć „funkcję płatnych na żądanie”
def f_from_data(xs, ys, x):
xfine = np.linspace(min(xs), max(xs), 10000)
y0 = inter.interp1d(xs, ys, kind = 'linear')
ans = (y0(xfine))[numpy.searchsorted(xfine, x)]
ans = round(ans,2)
return ans
To daje mi to, czego chcą Muszę to zrobić, abym mógł wprowadzić:
f = f_from_data([3, 4, 6], [0, 1, 2])
print f(3)
>>>0.0
Jak mam to zrobić? Rozglądałem się dookoła, ale nie mogę niczego znaleźć, bo myślę, że to naprawdę banalne, ale po prostu brakuje mi czegoś.
FYI, proces ten nazywa się [aplikacja funkcji cząstkowej] (http://en.m.wikipedia.org/wiki/Partial_application). – Kevin