Sports Analytics con Python: Comparando los partidos con mayor y menor actividad ofensiva del Mundial FIFA 2026

Imagen
¿Qué hace realmente emocionante a un partido de fútbol? Cuando hablamos de un gran partido solemos pensar inmediatamente en muchos goles. Sin embargo, en Sports Analytics la producción ofensiva puede analizarse desde una perspectiva mucho más amplia utilizando estadísticas avanzadas. En este proyecto desarrollé un Match Excitement Score (MES) , un índice que resume la actividad ofensiva de cada encuentro del Mundial FIFA 2026 mediante una combinación de métricas tradicionales y avanzadas. Todo el análisis fue realizado en Python utilizando Pandas y Matplotlib, compartiendo además el notebook completo para que cualquier persona pueda reproducir los resultados. ¿Cómo se construyó el Match Excitement Score? El índice integra seis variables ofensivas disponibles en el dataset: ⚽ Goles 📈 Expected Goals (xG) 🎯 Total de disparos 🥅 Disparos a puerta 🔥 Big Chances 📍 Toques dentro del área rival Cada variable fue estandarizada mediante Z-score y posteriormente ...

Macro de Excel para ordenar datos y obtener datos únicos de una columna o fila

Hola en esta ocasión les quiero compartir un ejemplo de una macro de Excel para poder ordenar datos de columnas y obtener los datos únicos de una columna.

Por ejemplo yo tengo un Archivo de Excel del que quiero obtener las fechas para poder obtener los datos y los mostrare en una columna, la pantalla de ejemplo se ve así




  • El primer caso es para obtener los fechas únicas de una columna y colocarlas en una columna

'select dates filas
    'Declaramos variables
    Dim fin As Long, i As Long, unicos As Variant, unicos2 As Variant
    With Sheets("InputFile")
        fin = Application.CountA(.Range("A:A"))
        unicos = WorksheetFunction.Unique(.Range("A1:A" & fin))
        'Obtenemos los datos de la matriz y los pasamos a una columna
        i = 0
        For i = LBound(unicos) To UBound(unicos)
            .Cells(i + 1, 5) = unicos(i, 1)
            Next i
        .Range("E2:E100").Select
        Selection.Columns.Sort key1:=Columns("E"), Order1:=xlAscending
    End With
  • Ahora obtener las fechas únicas pero de una fila y colocarlos en una columna
'select dates columnas
    With Sheets("InputFile")
        fin = 0
        unicos2 = WorksheetFunction.Unique(.Range("H1:AE1"))
        'Obtenemos los datos de la matriz y los pasamos a una columna
        i = 0
        For i = LBound(unicos) To UBound(unicos)
            If unicos2(i) <> Empty Then
                .Cells(i + 1, 6) = unicos2(i)
          End If
            Next i
        End With
    Worksheets("InputFile").Range("F2:F100").Select

    ' Sort column C, after column N and after column F
    Selection.Columns.Sort key1:=Columns("F"), Order1:=xlAscending
Blog de Programacion para todos


Como se ve el archivo después de correr la macro
Macro_unicos_ordenar datos Blog de programacion

Les comparto un video para ver cómo funciona la macro


Esta macro la probé en la versión Excel 2019 y Microsoft 365, espero les sea de utilidad y puedan aplicarla en su trabajo o en la escuela

Comentarios

🚀 Mantener este blog funcionando requiere tiempo y café. ¡Puedes contribuir con uno aquí!

Entradas más populares de este blog

Guía Práctica: Ejemplo Completo de ASPX para Desarrolladores Web

👉 Cómo obtener el tipo de cambio en Excel con API de Banxico (paso a paso)

Macro en Word para automatizar documentos: genera diplomas en segundos (con código VBA)