Está en la página 1de 18

Funciones

Grá…cos
Métodos numéricos

Laboratorio de Econometría: MATLAB1


Clase 3

Pérez Rojo, Flavio


BCRP y PUCP

1 Basado en las notas de clase de Miguel Ataurima


Pérez Rojo, Flavio BCRP y PUCP Laboratorio de Econometría: MATLAB
Funciones
Grá…cos
Métodos numéricos

1 Funciones
Funciones locales
Funciones anónimas
2 Grá…cos
Introducción
Función plot
Función subplot
Función bar
Función histogram
3 Métodos numéricos
Introducción
Newton-Raphson
Otros métodos

Pérez Rojo, Flavio BCRP y PUCP Laboratorio de Econometría: MATLAB


Funciones
Funciones locales
Grá…cos
Funciones anónimas
Métodos numéricos

Funciones locales

Los archivos de programa MATLAB pueden contener código


para más de una función
En un archivo función, la primera función del archivo se
denomina función principal
La función principal es visible para las funciones en otros
archivos, o puede llamarla desde la línea de comandos.
Las funciones adicionales dentro del archivo se denominan
funciones locales, y pueden ocurrir en cualquier orden
después de la función principal

Pérez Rojo, Flavio BCRP y PUCP Laboratorio de Econometría: MATLAB


Funciones
Funciones locales
Grá…cos
Funciones anónimas
Métodos numéricos

Funciones anónimas

Es una función que no se almacena en un archivo de programa


(*.m)
Está asociada con una variable cuyo tipo de datos es
function_handle.
Puede aceptar multiples entradas y devolver una salida.

nombre_funcion = @(args_entrada) (declaración_funcion)

Pérez Rojo, Flavio BCRP y PUCP Laboratorio de Econometría: MATLAB


Introducción
Funciones Función plot
Grá…cos Función subplot
Métodos numéricos Función bar
Función histogram

Anatomía de las grá…cas

Son los componentes visuales para mostrar datos grá…camente


Las funciones que utilizaremos serán plot, subplot, bar,
histogram

Pérez Rojo, Flavio BCRP y PUCP Laboratorio de Econometría: MATLAB


Introducción
Funciones Función plot
Grá…cos Función subplot
Métodos numéricos Función bar
Función histogram

Creación de una grá…ca

Se requieren los siguientes pasos


1 Preparar los datos en el workspace
2 Especi…car la ventana …gura o sub-grá…ca en donde se desea
hacer la grá…ca
3 Gra…car
4 Agregar anotaciones a la grá…ca

Pérez Rojo, Flavio BCRP y PUCP Laboratorio de Econometría: MATLAB


Introducción
Funciones Función plot
Grá…cos Función subplot
Métodos numéricos Función bar
Función histogram

Función plot

Hace un grá…co de línea


Requiere las coordenadas (x,y) de los puntos a trazar
La sintaxis es

plot(X,Y,LineSpec)
ploy(X1,Y1,LineSpec1,X2,Y2,LineSpec2,...,Xn,Yn,LineSpecn)

donde Xi y Yi pueden ser escalares, vectores o matrices, y


LineSpec hace referencia a los estilos de línea, marcadores y color.
Estos últimos pueden ir en cualquier orden.

Pérez Rojo, Flavio BCRP y PUCP Laboratorio de Econometría: MATLAB


Introducción
Funciones Función plot
Grá…cos Función subplot
Métodos numéricos Función bar
Función histogram

Función plot: LineSpec I

Los siguientes son las posibles especi…caciones de tipo de línea

Especi…cador Estilo
- sólida
-- guión
: punteada
-. punto guión

Pérez Rojo, Flavio BCRP y PUCP Laboratorio de Econometría: MATLAB


Introducción
Funciones Función plot
Grá…cos Función subplot
Métodos numéricos Función bar
Función histogram

Función plot: LineSpec II

Los siguientes son las posibles especi…caciones de color de línea

Especi…cador Color
r rojo
g verde
b azul
k negro

Pérez Rojo, Flavio BCRP y PUCP Laboratorio de Econometría: MATLAB


Introducción
Funciones Función plot
Grá…cos Función subplot
Métodos numéricos Función bar
Función histogram

Función plot: LineSpec III

Los siguientes son las posibles especi…caciones de marcador de


línea

Especi…cador Marcador
+ signo más
o círculo
* asterisco
x cruz

Pérez Rojo, Flavio BCRP y PUCP Laboratorio de Econometría: MATLAB


Introducción
Funciones Función plot
Grá…cos Función subplot
Métodos numéricos Función bar
Función histogram

Función plot: Anotaciones

Las anotaciones más básicas son


Título: title(string)
Nombre de los ejes: xlabel(string); ylabel(string);
Leyenda: legend(string1,string2,....,stringn)
Agregar/quitar rejilla: grid on (grid o¤)
Fijar ejes: xlim([number1 number2]); ylim([number1
number2])
Ajusta los ejes: axis tight

Pérez Rojo, Flavio BCRP y PUCP Laboratorio de Econometría: MATLAB


Introducción
Funciones Función plot
Grá…cos Función subplot
Métodos numéricos Función bar
Función histogram

Función subplot

Divide la …gura actual en ejes dispuestos en una distribución de m


…las por n columnas

subplot(m,n,p)

donde p es el p-ésimo elemento del grá…co que se cuenta por …las


de izquierda a derecha.
Posteriormente se puede agregar el grá…co que se desee.
Usualmente se utiliza plot

Pérez Rojo, Flavio BCRP y PUCP Laboratorio de Econometría: MATLAB


Introducción
Funciones Función plot
Grá…cos Función subplot
Métodos numéricos Función bar
Función histogram

Función bar

Hace grá…cos de barra. La sintaxis es

bar(x,y,width,style,color)

donde x son los lugares donde se ubicarán las barras, y son los
datos a gra…car como barras, width es el ancho de barra, style es
el estilo del grupo de barras y color puede ser b, r, g, c, ...

Pérez Rojo, Flavio BCRP y PUCP Laboratorio de Econometría: MATLAB


Introducción
Funciones Función plot
Grá…cos Función subplot
Métodos numéricos Función bar
Función histogram

Función histogram

Los histogramas son diagramas de barra para datos numéricos que


agrupan datos en contenedores. La sintaxis es

histogram(X,nbins)

donde X son los datos a distribuirse entre los contenedores y nbins


es el número de contenedores.

Pérez Rojo, Flavio BCRP y PUCP Laboratorio de Econometría: MATLAB


Funciones Introducción
Grá…cos Newton-Raphson
Métodos numéricos Otros métodos

Introducción

Usualmente en econometría trabajamos con ecuaciones


no-lineales. e.g., verosimilitud de un modelo
Así, se requiere algoritmos o métodos que puedan solucionar
estas ecuaciones que a mano resultarían imposibles
Los métodos numéricos buscan soluciones cercanas a puntos
donde, por ejemplo, los gradientes sean cero o las variaciones
en la función sean in…nitesimalmente pequeñas

Pérez Rojo, Flavio BCRP y PUCP Laboratorio de Econometría: MATLAB


Funciones Introducción
Grá…cos Newton-Raphson
Métodos numéricos Otros métodos

Newton-Raphson univariado
Se busca estimar la solución de una ecuación no-lineal
f (x ) = 0

Algoritmo
1 Datos:
Valor inicial de búsqueda: x1
Numero máximo de iteraciones: MaxIter
Nivel de tolerancia en x : ε
Nivel de tolerancia en y : δ
2 Para todo i = 2, 3, ...,MaxIter
Aplicar la fórmula de recurrencia: xi = xi 1 f 0 (xi 1 )f (xi 1 )
Detener si se veri…ca que el paso en x o y son menores que su
tolerancia

jxi xi 1j < ε, jf (xi ) f (xi 1 )j <δ


Pérez Rojo, Flavio BCRP y PUCP Laboratorio de Econometría: MATLAB
Funciones Introducción
Grá…cos Newton-Raphson
Métodos numéricos Otros métodos

Newton-Raphson multivariado
Se busca obtener la solución de la ecuación no lineal en
x1 , x2 , ..., xn
f (x1 , x2 , ..., xn ) = 0

1 Datos:
Valor inicial de búsqueda: x11 , x21 , ..., xn1 y número máximo
de iteraciones: MaxIter
Nivel de tolerancia en cada xi o en G (f (x1 , x2 , ..., xn )), donde
G (.) es el gradiente
2 Para todo i = 2, 3, ...,MaxIter
Aplicar la fórmula de recurrencia:
Xi = Xi 1 H 1 (Xi 1 )G (Xi 1 ), donde Xi = (x1 , x2 , ..., xn )0
y H (.) es el hessiano
Detener si se cumple el nivel de tolerancia para cada xi o si
G (.) 0 G (.) < ε
Pérez Rojo, Flavio BCRP y PUCP Laboratorio de Econometría: MATLAB
Funciones Introducción
Grá…cos Newton-Raphson
Métodos numéricos Otros métodos

Otros métodos

Función fminuc: minimiza un function_handle utilizando un


algoritmo con derivadas
Función fminsearch: minimiza un function_handle utilizando
un método de minimización no-lineal irrestricto
multidimensional (Nelder-Mead)

Pérez Rojo, Flavio BCRP y PUCP Laboratorio de Econometría: MATLAB

También podría gustarte