entropy / app.py
rubend18's picture
Update app.py
05c901d
raw
history blame
1.04 kB
import numpy as np
def entropy(X):
n = len(X)
counts = np.bincount(X)
probs = counts[np.nonzero(counts)] / n
en = 0
for i in range(len(probs)):
en = en - probs[i] * np.log(probs[i])/np.log(2)
return en
def string_to_list(string):
# Divide la cadena en una lista de subcadenas separadas por comas
substrings = string.split(',')
# Convierte cada subcadena en un número entero y agrega a una lista
response = list(map(int, substrings))
return response
# ********************************************************************************
# INTERFAZ
# ********************************************************************************
import gradio as gr
def function(valores):
return entropy(string_to_list("valores"))
demo = gr.Interface(
fn=function,
inputs=gr.Textbox(lines=3, label="Valores", placeholder="Ingrese los valores separados por comas..."),
outputs=gr.Textbox(lines=3, label="Resultado", placeholder="Aquí aparece su saludo..."),
)
demo.launch()