From 4c87ffe0bffbf454c6acbedcc8d027ae2d8843dc Mon Sep 17 00:00:00 2001 From: 10 Date: Fri, 6 Jan 2023 13:16:39 +0800 Subject: [PATCH] init ref data --- ana_func.py | 5 +++++ main.py | 2 -- test.py | 12 ++++++++---- 3 files changed, 13 insertions(+), 6 deletions(-) diff --git a/ana_func.py b/ana_func.py index 9a34865..96e1aeb 100644 --- a/ana_func.py +++ b/ana_func.py @@ -12,10 +12,14 @@ class dataAnalyticFunc(): return None self._raw_data = pd.DataFrame({'x_data':x_data,'y_data':y_data}) if ref_data: + print(ref_data[:10]) if len(ref_data) == len(self._raw_data): self._raw_data['ref_data'] = ref_data # print(self._raw_data['y_data'].tolist()) + # def find_peak(self): + # pass + def trigger_point(self, value_data, key_data, trigger, order = 1, drop = 1): if value_data not in list(self._raw_data) or key_data not in list(self._raw_data): print( 'There is no '+ str(value_data) + 'in datafram. ') @@ -90,6 +94,7 @@ class dataAnalyticFunc(): def guess_func(self,value_name='y_data', window = 10): win = window + print('guess_func') X = np.array([[math.pow(i,j) for j in range(4)] for i in np.linspace(-1*win,win,2*win+1)]) J = np.linalg.inv(X.T.dot(X)).dot(X.T) slop_list = [] diff --git a/main.py b/main.py index 08145fd..c99543d 100644 --- a/main.py +++ b/main.py @@ -44,9 +44,7 @@ class Main(): dict_writer.writerow(csv_data) elif input_data['mode'] == 3: - print('mode333') raw_data = CVmode_run() - print('mode3') else: for i in search_id: raw_data = slop_run(i, input_data['data_channel'], input_data['data']['window']) diff --git a/test.py b/test.py index f9771d7..0b33df9 100644 --- a/test.py +++ b/test.py @@ -38,17 +38,21 @@ def read_data(id,channel_list): def read_data_csv(file_name=0, start_row=0): df = pd.read_excel("read_file/2021-8-9-15-42-46-0_CV discussion.xlsx",skiprows = 63, usecols="B,D,F,H") - data = [list(df['Current[nA]']),list(df['Voltage[uV]'])] + data = [list(df['Current[nA]']),list(df['Voltage[uV]']),list(df['Unnamed: 7'])] # print(df) return data # read_data_csv() def CVmode_run(): - df = read_data_csv() + df = read_data_csv() print(df[0][:10]) - CVmode = ana_func.dataAnalyticFunc(df[0], df[1]) + data = [[df[0][i] for i in range(len(df[0])) if df[2][i] == 5], [df[1][i] for i in range(len(df[1])) if df[2][i] == 5]] + print(data[0][:10]) + CVmode = ana_func.dataAnalyticFunc(data[1], data[0]) cal_slop_data = CVmode.guess_func() - return [[i for i in range(len(df[0]))],cal_slop_data] + + return [data[0],data[1]] + # return [[i for i in range(len(data[0]))],cal_slop_data] # return [[i for i in range(len(df[0]))],[i/50 for i in df[0]]] # CVmode()