En este tutorial de Python te mostraré cómo obtener la moda de una serie de datos. Es decir, a partir de una lista de datos, saber cuál es el elemento que más se repite (y a este valor se le dice moda).

Sé que hay varios tipos de moda pero en este caso solo vamos a obtener el elemento que más se repite usando Python.

Algoritmo para obtener moda

En este caso necesitamos la estructura de datos hashmap o diccionario para simplificar el algoritmo. Un diccionario es como un arreglo, con la diferencia de que el diccionario nos permite utilizar una cadena como índice.

De este modo, por cada número encontrado en la distribución, vamos a definir una nueva entrada en el diccionario con un valor de 1 (pues se ha encontrado una vez) y después, si volvemos a encontrar el número, vamos a aumentar éste contador.

Finalmente obtenemos el dato que más se haya repetido, usando el mismo algoritmo aplicado para obtener el mayor de 3 números.

Obtener moda en Python

Comenzamos declarando los datos y el diccionario vacío:

Ahora recorremos los datos y los agregamos al diccionario. Básicamente llenamos el diccionario con la frecuencia de números (algo así como cuando contamos la frecuencia de palabras) para más tarde obtener la moda, es decir, el elemento más repetido.

Llegados a este punto ya tenemos un diccionario en donde la clave es el número, y el valor es la cantidad de veces que ese número se repite. Es momento de saber cuál número se repite la mayor cantidad de veces.

Relacionado:  Pangrama en Python

Declaramos la frecuencia mayor en 0, y suponemos que el número más repetido es el primero; aunque lo vamos a comprobar más tarde. En caso de que la frecuencia actual sea mayor que la frecuencia mayor, intercambiamos los valores y declaramos el número mayor como el actual.

Dentro del siguiente código vemos algunas conversiones, esto es porque las claves de diccionarios deben ser de tipo string, pero también nos importa el número int.

Al terminar, se va a imprimir el número que más se repite, además de la cantidad de veces que se encontró.

Poniendo todo junto

Moda de datos con Python

El código completo para obtener la moda en Python queda de la siguiente manera. Recuerda que en este caso, si hay un empate, se toma al último número encontrado en el diccionario.

Puedes ver en la imagen del encabezado que el programa funciona sin importar la cantidad de datos; todo está de manera correcta.

Si quieres puedes probar el ejercicio en línea. También te dejo con más contenido de Python en mi blog.

También he grabado un vídeo explicando:


Estoy disponible para trabajar en tu proyecto o realizar tu tarea pendiente, no dudes en ponerte en contacto conmigo.
Si el post fue de tu agrado muestra tu apoyo compartiéndolo, suscribiéndote al blog, siguiéndome o realizando una donación.

Suscribir por correo

Ingresa tu correo y recibirás mis últimas entradas sobre programación, open source, bases de datos y todo lo relacionado con informática

Únete a otros 812 suscriptores

Relacionado:  Android: permitir solo números


parzibyte

Programador freelancer listo para trabajar contigo. Aplicaciones web, móviles y de escritorio. PHP, Java, Go, Python, JavaScript, Kotlin y más :) https://parzibyte.me/blog/software-creado-por-parzibyte/

0 Comments

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

A %d blogueros les gusta esto: