sql >> Database teknologi >  >> RDS >> Mysql

Sådan normaliseres Data Mining Min Max fra Mysql i Python

Her er en SQL-forespørgsel, der burde få dig i gang (forudsat at du vil beregne den pr. kolonne):

   create table normalize as
     select
       (RT - min(RT)over()) / (max(RT)over() - min(RT)over()) * 0.8 + 0.1 as RT_norm
     from test;

Jeg testede denne forespørgsel i sqlite3, ikke MySQL. Det er ikke nødvendigvis optimalt, men følger intuitivt formlen. Bemærk, over omdanner min/maks samlede funktioner til vinduesfunktioner, hvilket betyder, at de ser på hele kolonnen, men resultatet gentages på hver række.

Todo

Du skal stadig:

  • send MySQl-forespørgslen via Python
  • gentag den samme kode for hver kolonne
  • giv hver kolonne et navn
  • tildel den resulterende tabel til et skema (mest sandsynligt)
  • håndtag dividere med 0, hvis en kolonne max og min er ens



  1. Sådan sikkerhedskopieres en SQL Server 2014 Express Localdb (.mdf) fil programmatisk

  2. PHP-fora - hvordan man håndterer ulæste diskussioner / emner / indlæg

  3. Hierarkisk liste over triggerhændelsestyper i SQL Server 2017

  4. Hvordan fjerner man accenter og alle tegn <> a..z i sql-server?