Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Como normalizar a mineração de dados Min Max do Mysql em Python


Aqui está uma consulta SQL que deve começar (supondo que você queira calculá-la por coluna):
   create table normalize as
     select
       (RT - min(RT)over()) / (max(RT)over() - min(RT)over()) * 0.8 + 0.1 as RT_norm
     from test;

Eu testei essa consulta no sqlite3, não no MySQL. Não é necessariamente ideal, mas segue intuitivamente a fórmula. Observe que o over transforma as funções de agregação min/max em funções de janela, o que significa que elas olham para a coluna inteira, mas o resultado é repetido em cada linha.

Tudo


Você ainda precisaria:
  • enviar a consulta MySQl via Python
  • repita o mesmo código para cada coluna
  • dê um nome a cada coluna
  • atribua a tabela resultante a um esquema (provavelmente)
  • lidar com a divisão por 0 caso uma coluna max e min sejam iguais