From 9cba6dfac186b2cb4d558084fcd7bc5688002745 Mon Sep 17 00:00:00 2001 From: VulcanixFR <vulcanix.gamingfr@gmail.com> Date: Wed, 7 Aug 2024 15:06:30 +0200 Subject: [PATCH] Tweak database --- tools/database.py | 2 +- tools/predictive_indicators.py | 34 +++++++++------------------------- 2 files changed, 10 insertions(+), 26 deletions(-) diff --git a/tools/database.py b/tools/database.py index dd44de8..93adf88 100644 --- a/tools/database.py +++ b/tools/database.py @@ -347,7 +347,7 @@ class Database: # Format columns print(prefix, "Formatting file", f.file_name, end=" ... ") - Extractor.auto_fit_trace_positions() + # Extractor.auto_fit_trace_positions() Extractor.apply_correction() # Get the output diff --git a/tools/predictive_indicators.py b/tools/predictive_indicators.py index e90c197..b8c78f4 100644 --- a/tools/predictive_indicators.py +++ b/tools/predictive_indicators.py @@ -25,7 +25,8 @@ COMPUTED_COLUMS = [ "Class", "Date", "Axis", - "RMS", "KMeans", "PeakFactor", "MeanTemperature" + "RMS", "KMeans", "PeakFactor", "MeanTemperature", + "Health" ] # for m in range(1,7): # for v in [ "RMS", "KMeans", "PeakFactor", "MeanTemperature" ]: @@ -44,26 +45,7 @@ def compute_run (DB: Database, robot: int, run: int, t0: int, date: str, next: C data = DB.robot(robot).by_run(run).run() - # Compute sub-arrays - subs: List[pd.DataFrame] = [ - data[data["MovingMotor"] == m] for m in range(1,7) - ] - runTime = t0 + mktime(datetime.strptime(date, "%Y-%m-%d").timetuple()) - # Compute for whole experiment - # line = [ t0, 0 ] - for m in range(1,7): - sub = subs[m - 1] - c = sub[f"Current_A{m}"].to_numpy() - temp = sub[f"Temperature_A{m}"].to_numpy() - line = [ - # *line, - runTime, runTime, 0, data["Class"][0], date, - f"A{m}", RMS(c), kmeans(c), peak_factor(c), np.mean(temp) - ] - out.append(line) - - # out.append(line) # Compute for each speed speeds = data['Speed'].unique() @@ -72,21 +54,23 @@ def compute_run (DB: Database, robot: int, run: int, t0: int, date: str, next: C ] for i, s in enumerate(speeds): d = speed_data[i] - # time = d["Sample_time"].to_numpy()[0] + t0 - # line = [ time, s ] for m in range(1,7): sub = d[d["MovingMotor"] == m] time = d["Sample_time"].to_numpy()[0] + runTime c = sub[f"Current_A{m}"].to_numpy() temp = sub[f"Temperature_A{m}"].to_numpy() + rms, km, pf = RMS(c), kmeans(c), peak_factor(c) + + # THE HEALTH INDEX IS COMPUTED HERE + health = rms - km - pf + line = [ - # *line, time, runTime, s, data["Class"][0], date, - f"A{m}", RMS(c), kmeans(c), peak_factor(c), np.mean(temp) + f"A{m}", rms, km, pf, np.mean(temp), + health ] out.append(line) - # out.append(line) return out -- GitLab