Categorías: Tutoriales

Calcular la media ponderada – Curso Octave

NOTA: este tutorial es parte del curso de Octave de Linux Hispano.

De nuevo, os voy a proponer un pequeño ejercicio a resolver. Más adelante tenéis la solución pero en un principio me gustaría que lo intentáseis por vosotros mismos.

En este ejercicio hay que calcular la media ponderada.

El ejercicio es el siguiente: Crea una función, media_ponderada.m, que devuelva la media ponderada dado un vector de datos d y un vector de peso p.

Los datos de prueba son los siguientes. Éste es el vector del conjunto de datos:

d = [1 2 3];

Éste es el vector de la importancia relativa, o peso, de los datos correspondientes:

p = [10 15 20];

El resultado tiene que salirte el siguiente:

mp = 33.333;

Ésta es la solución:

function mp = media_ponderada(x, y)
mp = 0;
  if length(x) == length(y)
    for i = 1:length(x)
      mp = mp + x(i) * y(i);
    end
    mp = mp / numel(x); % numel y length es equivalente
  end
end

Para ver la solución selecciona con el ratón el texto encuadrado justo arriba.

Manuel Ignacio López Quintero

Doctor en Ingeniería Informática especializado en Sistemas Inteligentes y Visión Artificial. Profesor y coadministrador de Linux Hispano. Para más información o para contactar con él visita su página oficial: Manuel Ignacio López Quintero.

Ver comentarios

  • Gracias por el tutorial Manuel. Luego de practicar con el "if" y "for" podemos aprovechar la potencia de Octave usando el operador .* (multiplicación elemento por elemento)

    function mp = media_ponderada(x, y)
    mp = sum(x .* y) / length(x);
    end

    No conocía el paquete de imagen. Gracias LinuxHispano!

Compartir
Publicado por
Manuel Ignacio López Quintero

Entradas recientes

DeepSeek

2 días hace

Contacto

2 semanas hace

Smart-tv mute

2 semanas hace

STEAM OS

3 semanas hace

2025

4 semanas hace

El podcast de Linux Hispano – #072 – El hardware libre debe consolidarse como el software libre

https://www.youtube.com/embed/z-xGk9c_eOw Guionista y locutor: Manuel Ignacio López Quintero.Fecha de publicación: 31 de diciembre de 2024.

1 mes hace