Hier ist eine SQL-Abfrage, die Ihnen den Einstieg erleichtern sollte (vorausgesetzt, Sie möchten sie pro Spalte berechnen):
create table normalize as
select
(RT - min(RT)over()) / (max(RT)over() - min(RT)over()) * 0.8 + 0.1 as RT_norm
from test;
Ich habe diese Abfrage in sqlite3 getestet, nicht in MySQL. Es ist nicht unbedingt optimal, folgt aber intuitiv der Formel. Beachten Sie, das over
wandelt die Min/Max-Aggregatfunktionen in Fensterfunktionen um, was bedeutet, dass sie die ganze Spalte betrachten, aber das Ergebnis wird in jeder Zeile wiederholt.
Zu erledigen
Sie müssten trotzdem:
- senden Sie die MySQl-Abfrage über Python
- denselben Code für jede Spalte wiederholen
- geben Sie jeder Spalte einen Namen
- weisen Sie die resultierende Tabelle (höchstwahrscheinlich) einem Schema zu
- handhabt die Division durch 0, falls eine Spalte max und min gleich ist