Код: Выделить всё
a
Код: Выделить всё
import pandas as pd
import math
from scipy.optimize import curve_fit
import numpy as np
time = [i for i in range(0, 9)]
cumulative_rate = [0, 0.14, 0.28, 0.36, 0.43, 0.50, 0.57, 0.60, 0.62]
df = pd.DataFrame({'time': time,
'cumulative_rate': cumulative_rate})
def fit_func_simple_a_fixed(x, b):
global a
x2 = -b*x
def fun(input):
return(1-math.exp(input))
x3 = np.array(list(map(fun, x2)))
return a*x3
# Code before using a class
a = 0.8
x = np.array(df.time)
y = np.array(df.cumulative_rate)
params = curve_fit(fit_func_simple_a_fixed, x, y)
print(params)
Код: Выделить всё
class Curve_Fit():
def __init__(self, data):
self.data = data
self.param = self.fit_curve()
def fit_curve(self):
a = 0.8
x = np.array(self.data.time)
y = np.array(self.data.cumulative_rate)
params = curve_fit(fit_func_simple_a_fixed, x, y)
return params
Curve_Fit(data=df)
Подробнее здесь: https://stackoverflow.com/questions/793 ... n-which-th