SlideShare una empresa de Scribd logo
1 de 43
Descargar para leer sin conexión
Clase 1. Introducci´on al ambiente Matlab
Nerys Ram´ırez Mord´an
Fundaci´on para el Avance de las Matem´aticas (FAMA)
10 de febrero de 2017
1 / 43
Contenido
1 Introducci´on
2 Interfaz Matlab
Aspectos fundamentales
3 Usar Matlab
C´alculos b´asicos y operadores aritm´eticos
Operador de asignaci´on
Definici´on de vectores
Operaciones con vectores
Operaciones relacionales y vectores l´ogicos
Operadores l´ogicos
Funciones l´ogicas y especiales
Operador colon
Vectores de caracteres
2 / 43
Introducci´on
3 / 43
Introducci´on
Es una sofisticada herramienta de computaci´on, cuyo nombre
resulta de la abreviatura Matrix Laboratory y se ha
convertido en un potente instrumento multiplataforma para
los economistas.
Aunque el lenguaje de programaci´on M se cre´o en 1970
proporcionando un acceso sencillo al Software de matrices,
Matlab surge en 1984, creado por Cleve Moler, para facilitar
la resoluci´on de ejercicios evitando programas generales como
C o Fortran.
La introducci´on a Matlab resulta intuitiva, no obstante, su
dominio puede costar. En esta primera secci´on se muestra
como realizar c´alculos matem´aticos b´asicos, asignar valores a
vectores y los operadores b´asicos del programa.
4 / 43
Sem´antica y sintaxis
En programaci´on podemos cometer dos tipos de errores: de
sintaxis y de sem´antica.
El tipo de regla que nos impide tropezar se llama Sintaxis,
que es el lenguaje y conjunto de reglas que forman las
sentencias.
Los errores en Matlab se asocian con colores rojo en la pantalla de
comando. El programa es estricto con sus leyes, dado que impide
generar rutinas ambiguas.
5 / 43
Interfaz Matlab
6 / 43
Aspectos fundamentales
7 / 43
Aspectos fundamentales
El directorio de trabajo nos permite especificar la carpeta de
trabajo. Es esta se suele tener las bases de datos y funciones
a utilizar. [cd permite modificar el directorio.]
El ´area de trabajo (workspace) brinda informaci´on sobre los
objetos creados.
Ventana de comandos (command window) permite indicar
instrucciones al programa.
(>>) el prompt es el indicador de comando, que es la parte
donde ingresamos las ordenes.
clc borra el historial de comando.
clear borra los objetos guardados en memoria.
Matlab es case sensitive
8 / 43
Usar Matlab
9 / 43
Instrucciones b´asicas
Directas: la ventana de comandos, seguidos de >>, indicamos
nuestras operaciones en Matlab de forma similar a como se
realizan con una calculadora.
>> 2+2
Matlab utiliza los signos algebraicos tradicionales para
realizar operaciones aritm´eticas: suma (+), menos (-),
multiplicaci´on (∗), divisi´on (/), exponenciaci´on (ˆ).
Usando funciones: tambi´en se pueden utilizar funciones para
indicarle ordenes al programa. Estas funciones son
aritm´eticas, matem´aticas, estad´ısticas, financieras, etc.
>> sqrt(2)
10 / 43
Ejercicios: operadores aritm´eticos
Ejercicio 1.1. Escriba las siguientes expresiones en el prompt de
comando de MATLAB y observe los resultados:
2 + 2
2 ∗ 5 + 3
3,62
√
2 +
√
9
pi
11 / 43
Una distinci´on sobre los logaritmos
Los logaritmos tienen un uso especial en econom´ıa. El log es
el exponente al cual se debe elevar la base para obtener el
n´umero loga(x) = y es equivalente a ay
= x. La funci´on
log10 permite obtener el logaritmo base 10.
>> log10(100)=2 (102
= 100)
En el caso de un logaritmo que tenga como base el e, se
conoce como logaritmo natural (ln(x)), al logaritmo cuya
base es el n´umero e (2.71). Este se obtiene en Matlab usando
la funci´on log [loge(5) = 1.6094 ... e1,6094
= 5].
>> log(5) [exp(1.6094)]
La funci´on log, tambi´en podemos utilizar logaritmos de base
distinta a 10, agregando un segundo argumento de una
funci´on log3(100) = y [loga(x) = ln(x)/ln(b)].
>> log(100, 3)
12 / 43
Operador de asignaci´on
Matlab guarda nuestros ´ultimos resultados en el objeto ans,
no obstante, esto no nos permite guardar los resultados para
utilizarlos posteriormente.
No obstante, Matlab permite guardar los c´alculos realizados
en objetos, mediante el operador de asignaci´on (un solo signo
=):
>> result=1+1
>> result1=result+2
El sigo ; permite evitar se impriman los resultados de
nuestra orden. Mientras que el signo , permite indicar varias
ordenes en una misma l´ınea de comando.
13 / 43
Ejercicios: asignaci´on
Ejercicio 1.2. Si el precio de un libro es de 2, 317 y ha decidido
comprar 2, guarde ambos elementos en dos variables p y q,
respectivamente. Luego, obtenga el costo total a pagar (pxq), guardado
en otra variable llamada ct.
14 / 43
Definir vectores
Crear un vector (V) de n elementos en Matlab:
V = [v1, v2, v3, .., vn]
V = [v1 v2 v3 ... vn]
La lista expl´ıcita (identifica cada miembro) es la manera
m´as sencilla de expresar un vector, objetos que permiten
aprovechar las potencialidades de Matlab.
>> edad=[1,2,3,5,4,5,6]
Por lo general, en econom´ıa tendremos tres tipos especiales
de vectores: num´ericos, l´ogicos y de texto. Un vector no
puede ser de dos clases a la vez, por eso podemos acceder a
estructura adicionales de bases de datos.
15 / 43
Operaciones con vectores: funciones (I)
Podemos realizar operaciones con vectores completos o sobre
partes especificas del mismo (indexaci´on).
En el caso de las funciones, estas funciones brindan
informaci´on sobre el contenido y las caracter´ısticas del vector.
Se utilizan usando el nombre de la funci´on seguido del
nombre del vector entre par´entesis:
>> edad=[1,2,3,5,4,5,6]
>> sum(edad)
>> sort(edad), sort(edad, descend )
>> max(edad) %min
>> mean(edad)
>> length(edad)
>> whos edad
16 / 43
Operaciones con vectores: funciones (II)
Podemos combinar y anidar las funciones anteriores.
>> meanEdad=sum(edad)/length(edad)
>> length(sum(edad))
17 / 43
Operaciones con vectores: operadores
Podemos realizar las tradicionales operaciones aritm´eticas
sobre vectores. Esta operaciones repite la operaci´on indicada
sobre cada uno de los elementos del vector.
>> edad+1
>> edad ∧ 1
>> edad
>> log(edad)
Tambi´en, podemos utilizar los corchetes concatenar vectores.
>> edad=[edad 8 9 12]
18 / 43
Operaciones con vectores: indexaci´on de vectores
Matlab permite acceder a partes de un vector, sobre el cual
podemos realizar operaciones directamente.
>> edad=[15 12 19 14 16 15 17 13 14];
>> edad(1)
>> edad([1 2 4 3])
>> edad(end) = edad(length(edad))
>> edad(end-2)
19 / 43
Operaciones con vectores: indexaci´on de vectores
Entres las operaciones que se pueden realizar se encuentra la
de cambiar un elemento o parte de un vector.
>> edad(1)=22
>> edad([1 2 4 3])=13
>> edad([1 2 4])=[6 7 5]
20 / 43
Ejercicios: operaciones e indexaci´on de vectores
Ejercicio 1.3. La calificaci´on de 5 estudiantes han sido: 69, 72, 91, 81,
70. Utilice esta informaci´on para crear un vector llamado calif que
contenga dichas calificaciones.
calif=[69, 72, 91, 81, 70]
- Sustituya el vector anterior, de forma tal que puede agregar las
calificaciones de 8 estudiantes, guardada en un vector de calificaciones
anteriores: califold=[71,72,85,84,68,98,85,78].
- Imprima en la pantalla, las calificaciones del primer, tercero y s´eptimo
estudiante.
- Genere un nuevo vector llamado califold2, que sea igual al cuadrado del
vector. calif
- Cambie el valor de las tres primeras edades por: 5 12 74, respectivamente.
21 / 43
Operadores relacionales
Como otros programas, Matlab cuenta con operadores
relacionales, que se pueden aplicar sobre escalares y sobre
vectores, indicando uno (1) cuando la operaci´on sea cierta y
cero (0) en caso de ser falsa.
Los operadores relacionales son:
< menor que
> mayor que
<= menor igual
=> mayor igual
== igual
= no igual
22 / 43
Operaciones con vectores: indexaci´on de vectores
Los operadores relacionales permiten testear relaciones entre
escalares y vectores, realizar indexaci´on l´ogica y condicionales en
nuestras estructuras.
Comparar escalares:
>> 3>2
Crear vectores l´ogicos: son vectores [0 1] que indican
cumplimiento o no de alguna condici´on.
>> edad>18
23 / 43
Operadores relacionales: indexaci´on l´ogica
Indexaci´on logica: tambi´en podemos utilizar los operadores
relacionales para acceder a las partes de un vector que
cumplen con determinadas condiciones.
>> edad(edad>18)
>> edad(∼(edad>18)) % ∼ negaci´on l´ogica
Reflexione
La diferencia entre el vector l´ogico y la indexaci´on l´ogica.
24 / 43
Ejercicios: relacionales y vectores l´ogicos
Ejercicio 1.4. Los siguientes vectores representan los resultados para
Marcos y Luis, de haber apostado en un casino durante 7 d´ıas
consecutivos: m=[-3,4,1,2,-3,-2,-1], l=[-2,-1,1,3,-1,-2,0],
respectivamente.
- Cree un vector l´ogico para cada persona que indique 1 los d´ıas que
registraron p´erdidas y 0 en casos contrario.
- Utilice la funci´on min, para ver cu´al ha sido la mayor perdida de cada uno
de los jugadores.
- Utilice la funci´on sum para contabilizar la cantidad de d´ıas que cada
persona perdi´o dinero.
- Pruebe si es cierto que la p´erdida total de Marcos es mayor a las de Luis.
- Cree un vector llamado m1 que sustituya los valores positivos del vector m
por ceros.
25 / 43
Operadores l´ogicos
Estos operadores permiten agrupar operadores relacionales:
& Y
| O
∼ Negaci´on l´ogica
x y Y & | O ∼ de O
1 1 1 1 0
1 0 0 1 0
0 1 0 1 0
0 0 0 0 1
26 / 43
Ejercicios: operadores l´ogicos
Ejercicio 1.5. Suponga tenemos informaci´on del sexo (1=mujer) y la
edad de 8 personas: sexo=[1,0,1,0,0,1,0,1] y
edad=[16,19,21,20,15,27,42,21].
- Pruebe la siguiente orden: data=[edad , sexo ].
- Cree un vector llamado mujerMenor, que sea igual a 1 en el caso de mujeres
menores de edad (tenga pendiente nombrar la variable indicador en funci´on
del grupo que toma el valor de 1).
- Cree un vector hombreOmayor, que sea igual a 1 en el caso de que la persona
sea hombre o mayor de edad.
- Utilice la funci´on sum para contabilizar el total de hombres mayores de edad.
- Presente todos los vectores anteriores un una sola matriz de datos.
27 / 43
funciones l´ogicas: Any
any es una funci´on vectorizada de Matlab que permite
verificar si al menos uno (1) de los elementos de un objeto en
Matlab (sea vector o matriz) cumple con una condici´on
determinada.
>> edad=[7 9 15 17 12 13];
>> any(edad>17) (ans 0)
>> edad=[7 9 15 17 12 13 18];
>> any(edad>17) (ans 1)
28 / 43
funciones l´ogicas: All
All es una funci´on vectorizada que permite verificar si todos
los elementos de un objeto en Matlab (sea vector o matriz)
cumple con una condici´on determinada, especificada
mediante indexaci´on l´ogica.
>> edad=[7 9 15 17 12 13];
>> all(edad>17) (ans 0)
>> edad=[7 9 15 17 12 13 18];
>> all(edad>17) (ans 0)
>> edad=[21 23 25 26 18];
>> all(edad>17) (ans 1)
29 / 43
Indexaci´on de valores mediante find
En muchas ocasiones, necesitamos conocer la posici´on
(´ındice) que ocupa cierto valor a lo interno de nuestro vector,
en tales casos utilizamos la funci´on find.
>> x=[4,7,8,9,10];
>> find(x==8)
Tambi´en podemos anidar funciones, suponga a testeado
diversos autoregresivos Ar(p) para determinar el orden
´optimo de rezagos a partir del m´ınimo de alg´un criterio de
informaci´on:
>> find(x==min(x))
30 / 43
Ejercicios: operadores l´ogicos
Ejercicio 1.6. Continu´e con el ejemplo 1.4 e indique en que d´ıa ambos
apostadores obtuvieron iguales resultados.
- Indique el d´ıa en que obtuvieron las mayores perdidas.
- Indique los d´ıas en que ambos registraron perdidas.
Reflexione
La diferencia entre operador de asignaci´on (=) y el operador
relacional (==).
31 / 43
Ejercicios: operadores l´ogicos
Ejercicio 1.7. Ha estimado un modelo VAR, y desea identificar cual es
el retardo que minimiza el criterio de informaci´on AIC, para identificar
el orden de retardo del VAR a partir de la informaci´on contenida la
siguiente tabla. Utilice el comando find para identificar el orden de
retardo que debe utilizar.
Retardos 1 2 3 4 5 6
AIC 0.012 0.11 0.109 0.1092 0.1097 0.11
32 / 43
Operador Colon
Muchos vectores y operaciones siguen una determinada
secuencia, el operador colon (:) permite realizar este tipo de
operaciones de forma sencilla:
>> anios=[2000:2010]
Adem´as, podemos indicar los saltos deseados en la secuencia
del vector:
>> 1:2:10
33 / 43
Ejercicios: secuencias
Ejercicio 1.7. Continuando con el ejercicio 1.5, utilice el vector edad
para realizar las siguientes operaciones utilizando indexaci´on mediante
el operador colon:
- Acceda a las 4 primeras posiciones del vector.
- Acceda a todas, excepto la ´ultima posici´on del vector.
- Acceda a toda las posiciones pares del vector.
- Cree un nuevo vector llamado edadpar, que sea igual al vector edad pero
donde todos los valores pares del mismo sean iguales a cero.
34 / 43
Ejercicios: secuencias
Ejercicio 1.8. En un estudio de estacionalidad tenemos una serie
mensual para tres a˜nos:
- Cree un vector llamado mes donde se repita la secuencia de n´umeros del 1 al
12 (1:12) de forma que cada uno indique un mes determinado (mes=[1:12,
1:12, 1:12]).
- Cree un nuevo vector llamado dic, que sea igual a 1 durante el mes de
diciembre y cero en los dem´as casos.
- Cree un nuevo vector llamado juliDic que sea igual a 1 durante el mes de
diciembre o julio, y cero en los dem´as casos.
- Cree otro vector llamado trim, que sea igual a 1 durante los primeros tres
meses del a˜no y cero en los dem´as casos.
35 / 43
Indexaci´on con operador colon
Tambi´en podemos utilizar el operador para acceder a partes
de un vector:
>> edad(1:5)
>> edad([2 4:7])
>> edad(1:end)
>> edad(1:end-1)
36 / 43
Ejercicios
Ejercicio 1.9. Obtenga el siguiente vector x=[4 5 8 6 3 2 1 4 5 2] para
intentar anticipar los siguientes resultados:
>> x(3)
>> x(2:4)
>> x(1:end)
>> x([3 4 6])
>> x(end-3:end)
>> x(1:end-1)
>> x(5:-2:1)
>> x(1:2:end)
>> x(x>4)
>> x(x>mean(x))
>> x(x>mean(x))=0
37 / 43
Secuencias: repmat
La funci´on repmat nos permite generar secuencia de vectores
(matrices) ya creadas:
>> edad=[10 15 20]
>> repmat(edad, 2)
>> repmat(edad, 1)
>> repmat(edad, [1 2])
>> repmat(edad, [2 1])
38 / 43
Vectores de texto
Hasta ahora hemos visto vectores num´ericos y l´ogicos, sin
embargo, en muchas ocasiones es preciso contar con un vector
de caracteres. Estos se crean en Matlab colocando el texto
entre comillas simple, dentro de corchetes:
>> sexo= { h m h m m }
Note que podemos acceder a partes del vector y aplicar
algunas funciones, pero no podemos realizar operaciones
l´ogicas sobre el mismo:
>> sexo(1)
>> sort(sexo)
>> sexo== h
Undefined operator == for input arguments of type cell .
39 / 43
Vectores categ´oricos
En el an´alisis econ´omico, especialmente de bases de hogares,
suele ser bastante ´util transformar los vectores texto en
categ´oricos, debido a que permite trabajar operadores l´ogicos
sobre los mismos.
>> sexoC=categorical(sexo)
>> sum(sexoC==’m’)
Tambi´en es posible renombrar los elementos dentro de un
vector.
>> sexoC1=categorical(sexo, {’h’ ’m’}, {’Hombre’ ’Mujer’})
40 / 43
Ejercicios: vectores de texto
Ejercicio 1.10. suponga en unas elecciones han participado tres
partidos (a b c) obteniendo los siguientes votos [1425 7812 2564]:
- Determine, mediante el comando find, cual ha sido el partido ganador.
41 / 43
Bibliograf´ıa
1 Attaway, Stormy (2013). A Practical Introduction to Programming and
Problem Solving Department of Mechanical Engineering, Boston
University. Third Edition.
2 Madoz, A. and Etxeberria, P. (2015). Notes on Matlab. University of the
Basque Country, UPV/EHU. January
3 MathWorks (2015). MATLAB Language Reference. Language Reference
Manual version 4 Barcelona GSE.
4 Moore, Holly (2008). MATLAB para ingenieros. Pearson Prentice Hall.
42 / 43
Gracias!!!
Fundaci´on para el Avance de las Matem´aticas (FAMA)
Curso de fundamentos de Matlab para el an´alisis econ´omico
43 / 43

Más contenido relacionado

La actualidad más candente

Ejercicios jacobi
Ejercicios jacobiEjercicios jacobi
Ejercicios jacobidjp951
 
Interpolacion de taylor y hermite
Interpolacion de taylor y hermiteInterpolacion de taylor y hermite
Interpolacion de taylor y hermitetaker85
 
Clase 07 ecuaciones diferenciales de segundo orden
Clase 07   ecuaciones diferenciales de segundo ordenClase 07   ecuaciones diferenciales de segundo orden
Clase 07 ecuaciones diferenciales de segundo ordenJimena Rodriguez
 
Metodos numericos-3-1212530740013750-9
Metodos numericos-3-1212530740013750-9Metodos numericos-3-1212530740013750-9
Metodos numericos-3-1212530740013750-9Xavier Davias
 
Introduccion y operaciones basicas (matlab)
Introduccion y operaciones basicas (matlab)Introduccion y operaciones basicas (matlab)
Introduccion y operaciones basicas (matlab)Gino Pannillo
 
Diferenciación por 3 y 5 puntos
Diferenciación por 3 y 5 puntosDiferenciación por 3 y 5 puntos
Diferenciación por 3 y 5 puntosalan moreno
 
S9. transformada inversa-de_laplace
S9. transformada inversa-de_laplaceS9. transformada inversa-de_laplace
S9. transformada inversa-de_laplaceNeil Sulca Taipe
 
Combinación lineal, espacio generado e independencia lineal
Combinación lineal, espacio generado e independencia linealCombinación lineal, espacio generado e independencia lineal
Combinación lineal, espacio generado e independencia linealBraian Moreno Cifuentes
 
Solucionario ecuaciones2
Solucionario ecuaciones2Solucionario ecuaciones2
Solucionario ecuaciones2ERICK CONDE
 
Sonido
SonidoSonido
SonidoHans A
 
Ecuaciones Diferenciales - Ecuaciones de Segundo orden
Ecuaciones Diferenciales - Ecuaciones de Segundo ordenEcuaciones Diferenciales - Ecuaciones de Segundo orden
Ecuaciones Diferenciales - Ecuaciones de Segundo ordenKike Prieto
 
Tabla de _derivadas
Tabla de _derivadasTabla de _derivadas
Tabla de _derivadasedusucina
 
Aplicaciones de las ecuaciones diferenciales
Aplicaciones de las ecuaciones diferencialesAplicaciones de las ecuaciones diferenciales
Aplicaciones de las ecuaciones diferencialesVirgilio Granda
 
Tabla laplace
Tabla laplaceTabla laplace
Tabla laplaceJORGE
 
Curvas y superficies de nivel, trazado de funciones de 2 variables
Curvas y superficies de nivel, trazado de funciones de 2 variablesCurvas y superficies de nivel, trazado de funciones de 2 variables
Curvas y superficies de nivel, trazado de funciones de 2 variablesDaniel Orozco
 

La actualidad más candente (20)

Ejercicios jacobi
Ejercicios jacobiEjercicios jacobi
Ejercicios jacobi
 
Interpolacion de taylor y hermite
Interpolacion de taylor y hermiteInterpolacion de taylor y hermite
Interpolacion de taylor y hermite
 
Transformadas de Laplace
Transformadas de LaplaceTransformadas de Laplace
Transformadas de Laplace
 
Expo 2 método de dos fases
Expo 2   método de dos  fasesExpo 2   método de dos  fases
Expo 2 método de dos fases
 
Clase 07 ecuaciones diferenciales de segundo orden
Clase 07   ecuaciones diferenciales de segundo ordenClase 07   ecuaciones diferenciales de segundo orden
Clase 07 ecuaciones diferenciales de segundo orden
 
Metodos numericos-3-1212530740013750-9
Metodos numericos-3-1212530740013750-9Metodos numericos-3-1212530740013750-9
Metodos numericos-3-1212530740013750-9
 
Introduccion y operaciones basicas (matlab)
Introduccion y operaciones basicas (matlab)Introduccion y operaciones basicas (matlab)
Introduccion y operaciones basicas (matlab)
 
Unidad 5 calculo
Unidad 5 calculoUnidad 5 calculo
Unidad 5 calculo
 
Fisica ii
Fisica iiFisica ii
Fisica ii
 
Diferenciación por 3 y 5 puntos
Diferenciación por 3 y 5 puntosDiferenciación por 3 y 5 puntos
Diferenciación por 3 y 5 puntos
 
S9. transformada inversa-de_laplace
S9. transformada inversa-de_laplaceS9. transformada inversa-de_laplace
S9. transformada inversa-de_laplace
 
Combinación lineal, espacio generado e independencia lineal
Combinación lineal, espacio generado e independencia linealCombinación lineal, espacio generado e independencia lineal
Combinación lineal, espacio generado e independencia lineal
 
Solucionario ecuaciones2
Solucionario ecuaciones2Solucionario ecuaciones2
Solucionario ecuaciones2
 
Sonido
SonidoSonido
Sonido
 
Ecuaciones Diferenciales - Ecuaciones de Segundo orden
Ecuaciones Diferenciales - Ecuaciones de Segundo ordenEcuaciones Diferenciales - Ecuaciones de Segundo orden
Ecuaciones Diferenciales - Ecuaciones de Segundo orden
 
Arreglos unidimensionales
Arreglos unidimensionalesArreglos unidimensionales
Arreglos unidimensionales
 
Tabla de _derivadas
Tabla de _derivadasTabla de _derivadas
Tabla de _derivadas
 
Aplicaciones de las ecuaciones diferenciales
Aplicaciones de las ecuaciones diferencialesAplicaciones de las ecuaciones diferenciales
Aplicaciones de las ecuaciones diferenciales
 
Tabla laplace
Tabla laplaceTabla laplace
Tabla laplace
 
Curvas y superficies de nivel, trazado de funciones de 2 variables
Curvas y superficies de nivel, trazado de funciones de 2 variablesCurvas y superficies de nivel, trazado de funciones de 2 variables
Curvas y superficies de nivel, trazado de funciones de 2 variables
 

Similar a Introducción a Matlab (20)

Apuntes matlab
Apuntes matlabApuntes matlab
Apuntes matlab
 
Matlabteoria 130808215706-phpapp01
Matlabteoria 130808215706-phpapp01Matlabteoria 130808215706-phpapp01
Matlabteoria 130808215706-phpapp01
 
Matlabteoria 130808215706-phpapp01
Matlabteoria 130808215706-phpapp01Matlabteoria 130808215706-phpapp01
Matlabteoria 130808215706-phpapp01
 
T9
T9T9
T9
 
Matlab teoria
Matlab teoriaMatlab teoria
Matlab teoria
 
Apuntes matlab
Apuntes matlabApuntes matlab
Apuntes matlab
 
MATLAB Tutorial
MATLAB TutorialMATLAB Tutorial
MATLAB Tutorial
 
Matlab -compu_aplicada
Matlab  -compu_aplicadaMatlab  -compu_aplicada
Matlab -compu_aplicada
 
Manual Matlab 2008
Manual Matlab 2008Manual Matlab 2008
Manual Matlab 2008
 
Matlab
MatlabMatlab
Matlab
 
Matlab
MatlabMatlab
Matlab
 
Matlab introducción
Matlab   introducciónMatlab   introducción
Matlab introducción
 
Matlab introducción
Matlab   introducciónMatlab   introducción
Matlab introducción
 
Matlab introducción
Matlab   introducciónMatlab   introducción
Matlab introducción
 
Silabo programación ii 2015-i
Silabo programación ii 2015-iSilabo programación ii 2015-i
Silabo programación ii 2015-i
 
TIPOS DE DATOS MATLAB
TIPOS DE DATOS MATLABTIPOS DE DATOS MATLAB
TIPOS DE DATOS MATLAB
 
Matlab
MatlabMatlab
Matlab
 
Matlab
MatlabMatlab
Matlab
 
Matlab
MatlabMatlab
Matlab
 
Matlab
MatlabMatlab
Matlab
 

Más de Nerys Ramírez Mordán

Clase14 Evaluación de políticas públicas
Clase14 Evaluación de políticas públicasClase14 Evaluación de políticas públicas
Clase14 Evaluación de políticas públicasNerys Ramírez Mordán
 
Clase13 Modelos de variables dependientes limitadas
Clase13 Modelos de variables dependientes limitadasClase13 Modelos de variables dependientes limitadas
Clase13 Modelos de variables dependientes limitadasNerys Ramírez Mordán
 
Clase10 Endogeneidad y estimación por variables instrumentales
Clase10 Endogeneidad y estimación por variables instrumentalesClase10 Endogeneidad y estimación por variables instrumentales
Clase10 Endogeneidad y estimación por variables instrumentalesNerys Ramírez Mordán
 
Clase9 Esperanza condicional y modelo de regresión
Clase9 Esperanza condicional y modelo de regresión Clase9 Esperanza condicional y modelo de regresión
Clase9 Esperanza condicional y modelo de regresión Nerys Ramírez Mordán
 
Clase7 Supuestos del modelo de regresión
Clase7 Supuestos del modelo de regresiónClase7 Supuestos del modelo de regresión
Clase7 Supuestos del modelo de regresiónNerys Ramírez Mordán
 
Clase6 Selección del modelo y problemas de datos
Clase6 Selección del modelo y problemas de datosClase6 Selección del modelo y problemas de datos
Clase6 Selección del modelo y problemas de datosNerys Ramírez Mordán
 
Clase4 Test de hipótesis en el modelo de regresión
Clase4 Test de hipótesis en el modelo de regresiónClase4 Test de hipótesis en el modelo de regresión
Clase4 Test de hipótesis en el modelo de regresiónNerys Ramírez Mordán
 
Clase3 El modelo de regresión múltiple
Clase3 El modelo de regresión múltipleClase3 El modelo de regresión múltiple
Clase3 El modelo de regresión múltipleNerys Ramírez Mordán
 
Clase1. Naturaleza del análisis econométrico y preliminares estadísticos
Clase1. Naturaleza del análisis econométrico y preliminares estadísticosClase1. Naturaleza del análisis econométrico y preliminares estadísticos
Clase1. Naturaleza del análisis econométrico y preliminares estadísticosNerys Ramírez Mordán
 
Curso de R: 1.1. introducción al lenguaje (Objetos y operadores básicos)
Curso de R: 1.1. introducción al lenguaje (Objetos y operadores básicos)Curso de R: 1.1. introducción al lenguaje (Objetos y operadores básicos)
Curso de R: 1.1. introducción al lenguaje (Objetos y operadores básicos)Nerys Ramírez Mordán
 

Más de Nerys Ramírez Mordán (14)

Clase14 Evaluación de políticas públicas
Clase14 Evaluación de políticas públicasClase14 Evaluación de políticas públicas
Clase14 Evaluación de políticas públicas
 
Clase13 Modelos de variables dependientes limitadas
Clase13 Modelos de variables dependientes limitadasClase13 Modelos de variables dependientes limitadas
Clase13 Modelos de variables dependientes limitadas
 
Clase12 heterocedasticidad
Clase12 heterocedasticidadClase12 heterocedasticidad
Clase12 heterocedasticidad
 
Clase11 Método Mle y momentos
Clase11 Método Mle y momentosClase11 Método Mle y momentos
Clase11 Método Mle y momentos
 
Clase10 Endogeneidad y estimación por variables instrumentales
Clase10 Endogeneidad y estimación por variables instrumentalesClase10 Endogeneidad y estimación por variables instrumentales
Clase10 Endogeneidad y estimación por variables instrumentales
 
Clase9 Esperanza condicional y modelo de regresión
Clase9 Esperanza condicional y modelo de regresión Clase9 Esperanza condicional y modelo de regresión
Clase9 Esperanza condicional y modelo de regresión
 
Clase7 Supuestos del modelo de regresión
Clase7 Supuestos del modelo de regresiónClase7 Supuestos del modelo de regresión
Clase7 Supuestos del modelo de regresión
 
Clase6 Selección del modelo y problemas de datos
Clase6 Selección del modelo y problemas de datosClase6 Selección del modelo y problemas de datos
Clase6 Selección del modelo y problemas de datos
 
Clase5 Formas funcionales
Clase5 Formas funcionalesClase5 Formas funcionales
Clase5 Formas funcionales
 
Clase4 Test de hipótesis en el modelo de regresión
Clase4 Test de hipótesis en el modelo de regresiónClase4 Test de hipótesis en el modelo de regresión
Clase4 Test de hipótesis en el modelo de regresión
 
Clase3 El modelo de regresión múltiple
Clase3 El modelo de regresión múltipleClase3 El modelo de regresión múltiple
Clase3 El modelo de regresión múltiple
 
Clase2 El modelo de regresión simple
Clase2 El modelo de regresión simpleClase2 El modelo de regresión simple
Clase2 El modelo de regresión simple
 
Clase1. Naturaleza del análisis econométrico y preliminares estadísticos
Clase1. Naturaleza del análisis econométrico y preliminares estadísticosClase1. Naturaleza del análisis econométrico y preliminares estadísticos
Clase1. Naturaleza del análisis econométrico y preliminares estadísticos
 
Curso de R: 1.1. introducción al lenguaje (Objetos y operadores básicos)
Curso de R: 1.1. introducción al lenguaje (Objetos y operadores básicos)Curso de R: 1.1. introducción al lenguaje (Objetos y operadores básicos)
Curso de R: 1.1. introducción al lenguaje (Objetos y operadores básicos)
 

Último

Proyecto de catálogo de cuentas EMPRESA.
Proyecto de catálogo de cuentas EMPRESA.Proyecto de catálogo de cuentas EMPRESA.
Proyecto de catálogo de cuentas EMPRESA.ssuser10db01
 
El cheque 1 y sus tipos de cheque.pptx
El cheque  1 y sus tipos de  cheque.pptxEl cheque  1 y sus tipos de  cheque.pptx
El cheque 1 y sus tipos de cheque.pptxNathaliTAndradeS
 
QUE REQUISITOS DEBO CUMPLIR PARA PENSIONARME.pdf
QUE REQUISITOS DEBO CUMPLIR PARA PENSIONARME.pdfQUE REQUISITOS DEBO CUMPLIR PARA PENSIONARME.pdf
QUE REQUISITOS DEBO CUMPLIR PARA PENSIONARME.pdflupismdo
 
ley del ISO Y acreditamientos y extensiones
ley del ISO Y acreditamientos y extensionesley del ISO Y acreditamientos y extensiones
ley del ISO Y acreditamientos y extensionesYimiLopesBarrios
 
MANUAL PARA OBTENER MI PENSIÓN O RETIRAR MIS RECURSOS.pdf
MANUAL PARA OBTENER MI PENSIÓN O RETIRAR MIS RECURSOS.pdfMANUAL PARA OBTENER MI PENSIÓN O RETIRAR MIS RECURSOS.pdf
MANUAL PARA OBTENER MI PENSIÓN O RETIRAR MIS RECURSOS.pdflupismdo
 
EL ESTADO Y LOS ORGANISMOS AUTONOMOS.pdf
EL ESTADO Y LOS ORGANISMOS AUTONOMOS.pdfEL ESTADO Y LOS ORGANISMOS AUTONOMOS.pdf
EL ESTADO Y LOS ORGANISMOS AUTONOMOS.pdfssuser2887fd1
 
Estructura y elaboración de un presupuesto financiero
Estructura y elaboración de un presupuesto financieroEstructura y elaboración de un presupuesto financiero
Estructura y elaboración de un presupuesto financieroMARTINMARTINEZ30236
 
41 RAZONES DE PORQUE SI ESTAMOS MAL EN MÉXICO
41 RAZONES DE PORQUE SI ESTAMOS MAL EN MÉXICO41 RAZONES DE PORQUE SI ESTAMOS MAL EN MÉXICO
41 RAZONES DE PORQUE SI ESTAMOS MAL EN MÉXICOlupismdo
 
PRESUPUESTOS COMO HERRAMIENTA DE GESTION - UNIAGUSTINIANA.pptx
PRESUPUESTOS COMO HERRAMIENTA DE GESTION - UNIAGUSTINIANA.pptxPRESUPUESTOS COMO HERRAMIENTA DE GESTION - UNIAGUSTINIANA.pptx
PRESUPUESTOS COMO HERRAMIENTA DE GESTION - UNIAGUSTINIANA.pptxmanuelrojash
 
abrogar, clases de abrogacion,importancia y consecuencias
abrogar, clases de abrogacion,importancia y consecuenciasabrogar, clases de abrogacion,importancia y consecuencias
abrogar, clases de abrogacion,importancia y consecuenciasDeniseGonzales11
 
Dino Jarach - El Hecho Imponible2024.pdf
Dino Jarach - El Hecho Imponible2024.pdfDino Jarach - El Hecho Imponible2024.pdf
Dino Jarach - El Hecho Imponible2024.pdfAdrianKreitzer
 
puntos-clave-de-la-reforma-pensional-2023.pdf
puntos-clave-de-la-reforma-pensional-2023.pdfpuntos-clave-de-la-reforma-pensional-2023.pdf
puntos-clave-de-la-reforma-pensional-2023.pdfosoriojuanpablo114
 
Politicas publicas para el sector agropecuario en México.pptx
Politicas publicas para el sector agropecuario en México.pptxPoliticas publicas para el sector agropecuario en México.pptx
Politicas publicas para el sector agropecuario en México.pptxvladisse
 
Principios de economia Mankiw 6 edicion.pdf
Principios de economia Mankiw 6 edicion.pdfPrincipios de economia Mankiw 6 edicion.pdf
Principios de economia Mankiw 6 edicion.pdfauxcompras5
 
Análisis de la Temporada Turística 2024 en Uruguay
Análisis de la Temporada Turística 2024 en UruguayAnálisis de la Temporada Turística 2024 en Uruguay
Análisis de la Temporada Turística 2024 en UruguayEXANTE
 
Trabajo tres_23 de abrilkckckckkckkccckc
Trabajo tres_23 de abrilkckckckkckkccckcTrabajo tres_23 de abrilkckckckkckkccckc
Trabajo tres_23 de abrilkckckckkckkccckclauravacca3
 
TEMA 3 DECISIONES DE INVERSION Y FINANCIACION UNIVERISDAD REY JUAN CARLOS
TEMA 3 DECISIONES DE INVERSION Y FINANCIACION UNIVERISDAD REY JUAN CARLOSTEMA 3 DECISIONES DE INVERSION Y FINANCIACION UNIVERISDAD REY JUAN CARLOS
TEMA 3 DECISIONES DE INVERSION Y FINANCIACION UNIVERISDAD REY JUAN CARLOSreyjuancarlosjose
 
Sección 13 Inventarios, NIIF PARA PYMES
Sección  13 Inventarios, NIIF PARA PYMESSección  13 Inventarios, NIIF PARA PYMES
Sección 13 Inventarios, NIIF PARA PYMESssuser10db01
 
mercado de capitales universidad simon rodriguez - guanare (unidad I).pdf
mercado de capitales universidad simon rodriguez - guanare (unidad I).pdfmercado de capitales universidad simon rodriguez - guanare (unidad I).pdf
mercado de capitales universidad simon rodriguez - guanare (unidad I).pdfGegdielJose1
 

Último (20)

Proyecto de catálogo de cuentas EMPRESA.
Proyecto de catálogo de cuentas EMPRESA.Proyecto de catálogo de cuentas EMPRESA.
Proyecto de catálogo de cuentas EMPRESA.
 
El cheque 1 y sus tipos de cheque.pptx
El cheque  1 y sus tipos de  cheque.pptxEl cheque  1 y sus tipos de  cheque.pptx
El cheque 1 y sus tipos de cheque.pptx
 
QUE REQUISITOS DEBO CUMPLIR PARA PENSIONARME.pdf
QUE REQUISITOS DEBO CUMPLIR PARA PENSIONARME.pdfQUE REQUISITOS DEBO CUMPLIR PARA PENSIONARME.pdf
QUE REQUISITOS DEBO CUMPLIR PARA PENSIONARME.pdf
 
ley del ISO Y acreditamientos y extensiones
ley del ISO Y acreditamientos y extensionesley del ISO Y acreditamientos y extensiones
ley del ISO Y acreditamientos y extensiones
 
MANUAL PARA OBTENER MI PENSIÓN O RETIRAR MIS RECURSOS.pdf
MANUAL PARA OBTENER MI PENSIÓN O RETIRAR MIS RECURSOS.pdfMANUAL PARA OBTENER MI PENSIÓN O RETIRAR MIS RECURSOS.pdf
MANUAL PARA OBTENER MI PENSIÓN O RETIRAR MIS RECURSOS.pdf
 
EL ESTADO Y LOS ORGANISMOS AUTONOMOS.pdf
EL ESTADO Y LOS ORGANISMOS AUTONOMOS.pdfEL ESTADO Y LOS ORGANISMOS AUTONOMOS.pdf
EL ESTADO Y LOS ORGANISMOS AUTONOMOS.pdf
 
Mercado Eléctrico de Ecuador y España.pdf
Mercado Eléctrico de Ecuador y España.pdfMercado Eléctrico de Ecuador y España.pdf
Mercado Eléctrico de Ecuador y España.pdf
 
Estructura y elaboración de un presupuesto financiero
Estructura y elaboración de un presupuesto financieroEstructura y elaboración de un presupuesto financiero
Estructura y elaboración de un presupuesto financiero
 
41 RAZONES DE PORQUE SI ESTAMOS MAL EN MÉXICO
41 RAZONES DE PORQUE SI ESTAMOS MAL EN MÉXICO41 RAZONES DE PORQUE SI ESTAMOS MAL EN MÉXICO
41 RAZONES DE PORQUE SI ESTAMOS MAL EN MÉXICO
 
PRESUPUESTOS COMO HERRAMIENTA DE GESTION - UNIAGUSTINIANA.pptx
PRESUPUESTOS COMO HERRAMIENTA DE GESTION - UNIAGUSTINIANA.pptxPRESUPUESTOS COMO HERRAMIENTA DE GESTION - UNIAGUSTINIANA.pptx
PRESUPUESTOS COMO HERRAMIENTA DE GESTION - UNIAGUSTINIANA.pptx
 
abrogar, clases de abrogacion,importancia y consecuencias
abrogar, clases de abrogacion,importancia y consecuenciasabrogar, clases de abrogacion,importancia y consecuencias
abrogar, clases de abrogacion,importancia y consecuencias
 
Dino Jarach - El Hecho Imponible2024.pdf
Dino Jarach - El Hecho Imponible2024.pdfDino Jarach - El Hecho Imponible2024.pdf
Dino Jarach - El Hecho Imponible2024.pdf
 
puntos-clave-de-la-reforma-pensional-2023.pdf
puntos-clave-de-la-reforma-pensional-2023.pdfpuntos-clave-de-la-reforma-pensional-2023.pdf
puntos-clave-de-la-reforma-pensional-2023.pdf
 
Politicas publicas para el sector agropecuario en México.pptx
Politicas publicas para el sector agropecuario en México.pptxPoliticas publicas para el sector agropecuario en México.pptx
Politicas publicas para el sector agropecuario en México.pptx
 
Principios de economia Mankiw 6 edicion.pdf
Principios de economia Mankiw 6 edicion.pdfPrincipios de economia Mankiw 6 edicion.pdf
Principios de economia Mankiw 6 edicion.pdf
 
Análisis de la Temporada Turística 2024 en Uruguay
Análisis de la Temporada Turística 2024 en UruguayAnálisis de la Temporada Turística 2024 en Uruguay
Análisis de la Temporada Turística 2024 en Uruguay
 
Trabajo tres_23 de abrilkckckckkckkccckc
Trabajo tres_23 de abrilkckckckkckkccckcTrabajo tres_23 de abrilkckckckkckkccckc
Trabajo tres_23 de abrilkckckckkckkccckc
 
TEMA 3 DECISIONES DE INVERSION Y FINANCIACION UNIVERISDAD REY JUAN CARLOS
TEMA 3 DECISIONES DE INVERSION Y FINANCIACION UNIVERISDAD REY JUAN CARLOSTEMA 3 DECISIONES DE INVERSION Y FINANCIACION UNIVERISDAD REY JUAN CARLOS
TEMA 3 DECISIONES DE INVERSION Y FINANCIACION UNIVERISDAD REY JUAN CARLOS
 
Sección 13 Inventarios, NIIF PARA PYMES
Sección  13 Inventarios, NIIF PARA PYMESSección  13 Inventarios, NIIF PARA PYMES
Sección 13 Inventarios, NIIF PARA PYMES
 
mercado de capitales universidad simon rodriguez - guanare (unidad I).pdf
mercado de capitales universidad simon rodriguez - guanare (unidad I).pdfmercado de capitales universidad simon rodriguez - guanare (unidad I).pdf
mercado de capitales universidad simon rodriguez - guanare (unidad I).pdf
 

Introducción a Matlab

  • 1. Clase 1. Introducci´on al ambiente Matlab Nerys Ram´ırez Mord´an Fundaci´on para el Avance de las Matem´aticas (FAMA) 10 de febrero de 2017 1 / 43
  • 2. Contenido 1 Introducci´on 2 Interfaz Matlab Aspectos fundamentales 3 Usar Matlab C´alculos b´asicos y operadores aritm´eticos Operador de asignaci´on Definici´on de vectores Operaciones con vectores Operaciones relacionales y vectores l´ogicos Operadores l´ogicos Funciones l´ogicas y especiales Operador colon Vectores de caracteres 2 / 43
  • 4. Introducci´on Es una sofisticada herramienta de computaci´on, cuyo nombre resulta de la abreviatura Matrix Laboratory y se ha convertido en un potente instrumento multiplataforma para los economistas. Aunque el lenguaje de programaci´on M se cre´o en 1970 proporcionando un acceso sencillo al Software de matrices, Matlab surge en 1984, creado por Cleve Moler, para facilitar la resoluci´on de ejercicios evitando programas generales como C o Fortran. La introducci´on a Matlab resulta intuitiva, no obstante, su dominio puede costar. En esta primera secci´on se muestra como realizar c´alculos matem´aticos b´asicos, asignar valores a vectores y los operadores b´asicos del programa. 4 / 43
  • 5. Sem´antica y sintaxis En programaci´on podemos cometer dos tipos de errores: de sintaxis y de sem´antica. El tipo de regla que nos impide tropezar se llama Sintaxis, que es el lenguaje y conjunto de reglas que forman las sentencias. Los errores en Matlab se asocian con colores rojo en la pantalla de comando. El programa es estricto con sus leyes, dado que impide generar rutinas ambiguas. 5 / 43
  • 8. Aspectos fundamentales El directorio de trabajo nos permite especificar la carpeta de trabajo. Es esta se suele tener las bases de datos y funciones a utilizar. [cd permite modificar el directorio.] El ´area de trabajo (workspace) brinda informaci´on sobre los objetos creados. Ventana de comandos (command window) permite indicar instrucciones al programa. (>>) el prompt es el indicador de comando, que es la parte donde ingresamos las ordenes. clc borra el historial de comando. clear borra los objetos guardados en memoria. Matlab es case sensitive 8 / 43
  • 10. Instrucciones b´asicas Directas: la ventana de comandos, seguidos de >>, indicamos nuestras operaciones en Matlab de forma similar a como se realizan con una calculadora. >> 2+2 Matlab utiliza los signos algebraicos tradicionales para realizar operaciones aritm´eticas: suma (+), menos (-), multiplicaci´on (∗), divisi´on (/), exponenciaci´on (ˆ). Usando funciones: tambi´en se pueden utilizar funciones para indicarle ordenes al programa. Estas funciones son aritm´eticas, matem´aticas, estad´ısticas, financieras, etc. >> sqrt(2) 10 / 43
  • 11. Ejercicios: operadores aritm´eticos Ejercicio 1.1. Escriba las siguientes expresiones en el prompt de comando de MATLAB y observe los resultados: 2 + 2 2 ∗ 5 + 3 3,62 √ 2 + √ 9 pi 11 / 43
  • 12. Una distinci´on sobre los logaritmos Los logaritmos tienen un uso especial en econom´ıa. El log es el exponente al cual se debe elevar la base para obtener el n´umero loga(x) = y es equivalente a ay = x. La funci´on log10 permite obtener el logaritmo base 10. >> log10(100)=2 (102 = 100) En el caso de un logaritmo que tenga como base el e, se conoce como logaritmo natural (ln(x)), al logaritmo cuya base es el n´umero e (2.71). Este se obtiene en Matlab usando la funci´on log [loge(5) = 1.6094 ... e1,6094 = 5]. >> log(5) [exp(1.6094)] La funci´on log, tambi´en podemos utilizar logaritmos de base distinta a 10, agregando un segundo argumento de una funci´on log3(100) = y [loga(x) = ln(x)/ln(b)]. >> log(100, 3) 12 / 43
  • 13. Operador de asignaci´on Matlab guarda nuestros ´ultimos resultados en el objeto ans, no obstante, esto no nos permite guardar los resultados para utilizarlos posteriormente. No obstante, Matlab permite guardar los c´alculos realizados en objetos, mediante el operador de asignaci´on (un solo signo =): >> result=1+1 >> result1=result+2 El sigo ; permite evitar se impriman los resultados de nuestra orden. Mientras que el signo , permite indicar varias ordenes en una misma l´ınea de comando. 13 / 43
  • 14. Ejercicios: asignaci´on Ejercicio 1.2. Si el precio de un libro es de 2, 317 y ha decidido comprar 2, guarde ambos elementos en dos variables p y q, respectivamente. Luego, obtenga el costo total a pagar (pxq), guardado en otra variable llamada ct. 14 / 43
  • 15. Definir vectores Crear un vector (V) de n elementos en Matlab: V = [v1, v2, v3, .., vn] V = [v1 v2 v3 ... vn] La lista expl´ıcita (identifica cada miembro) es la manera m´as sencilla de expresar un vector, objetos que permiten aprovechar las potencialidades de Matlab. >> edad=[1,2,3,5,4,5,6] Por lo general, en econom´ıa tendremos tres tipos especiales de vectores: num´ericos, l´ogicos y de texto. Un vector no puede ser de dos clases a la vez, por eso podemos acceder a estructura adicionales de bases de datos. 15 / 43
  • 16. Operaciones con vectores: funciones (I) Podemos realizar operaciones con vectores completos o sobre partes especificas del mismo (indexaci´on). En el caso de las funciones, estas funciones brindan informaci´on sobre el contenido y las caracter´ısticas del vector. Se utilizan usando el nombre de la funci´on seguido del nombre del vector entre par´entesis: >> edad=[1,2,3,5,4,5,6] >> sum(edad) >> sort(edad), sort(edad, descend ) >> max(edad) %min >> mean(edad) >> length(edad) >> whos edad 16 / 43
  • 17. Operaciones con vectores: funciones (II) Podemos combinar y anidar las funciones anteriores. >> meanEdad=sum(edad)/length(edad) >> length(sum(edad)) 17 / 43
  • 18. Operaciones con vectores: operadores Podemos realizar las tradicionales operaciones aritm´eticas sobre vectores. Esta operaciones repite la operaci´on indicada sobre cada uno de los elementos del vector. >> edad+1 >> edad ∧ 1 >> edad >> log(edad) Tambi´en, podemos utilizar los corchetes concatenar vectores. >> edad=[edad 8 9 12] 18 / 43
  • 19. Operaciones con vectores: indexaci´on de vectores Matlab permite acceder a partes de un vector, sobre el cual podemos realizar operaciones directamente. >> edad=[15 12 19 14 16 15 17 13 14]; >> edad(1) >> edad([1 2 4 3]) >> edad(end) = edad(length(edad)) >> edad(end-2) 19 / 43
  • 20. Operaciones con vectores: indexaci´on de vectores Entres las operaciones que se pueden realizar se encuentra la de cambiar un elemento o parte de un vector. >> edad(1)=22 >> edad([1 2 4 3])=13 >> edad([1 2 4])=[6 7 5] 20 / 43
  • 21. Ejercicios: operaciones e indexaci´on de vectores Ejercicio 1.3. La calificaci´on de 5 estudiantes han sido: 69, 72, 91, 81, 70. Utilice esta informaci´on para crear un vector llamado calif que contenga dichas calificaciones. calif=[69, 72, 91, 81, 70] - Sustituya el vector anterior, de forma tal que puede agregar las calificaciones de 8 estudiantes, guardada en un vector de calificaciones anteriores: califold=[71,72,85,84,68,98,85,78]. - Imprima en la pantalla, las calificaciones del primer, tercero y s´eptimo estudiante. - Genere un nuevo vector llamado califold2, que sea igual al cuadrado del vector. calif - Cambie el valor de las tres primeras edades por: 5 12 74, respectivamente. 21 / 43
  • 22. Operadores relacionales Como otros programas, Matlab cuenta con operadores relacionales, que se pueden aplicar sobre escalares y sobre vectores, indicando uno (1) cuando la operaci´on sea cierta y cero (0) en caso de ser falsa. Los operadores relacionales son: < menor que > mayor que <= menor igual => mayor igual == igual = no igual 22 / 43
  • 23. Operaciones con vectores: indexaci´on de vectores Los operadores relacionales permiten testear relaciones entre escalares y vectores, realizar indexaci´on l´ogica y condicionales en nuestras estructuras. Comparar escalares: >> 3>2 Crear vectores l´ogicos: son vectores [0 1] que indican cumplimiento o no de alguna condici´on. >> edad>18 23 / 43
  • 24. Operadores relacionales: indexaci´on l´ogica Indexaci´on logica: tambi´en podemos utilizar los operadores relacionales para acceder a las partes de un vector que cumplen con determinadas condiciones. >> edad(edad>18) >> edad(∼(edad>18)) % ∼ negaci´on l´ogica Reflexione La diferencia entre el vector l´ogico y la indexaci´on l´ogica. 24 / 43
  • 25. Ejercicios: relacionales y vectores l´ogicos Ejercicio 1.4. Los siguientes vectores representan los resultados para Marcos y Luis, de haber apostado en un casino durante 7 d´ıas consecutivos: m=[-3,4,1,2,-3,-2,-1], l=[-2,-1,1,3,-1,-2,0], respectivamente. - Cree un vector l´ogico para cada persona que indique 1 los d´ıas que registraron p´erdidas y 0 en casos contrario. - Utilice la funci´on min, para ver cu´al ha sido la mayor perdida de cada uno de los jugadores. - Utilice la funci´on sum para contabilizar la cantidad de d´ıas que cada persona perdi´o dinero. - Pruebe si es cierto que la p´erdida total de Marcos es mayor a las de Luis. - Cree un vector llamado m1 que sustituya los valores positivos del vector m por ceros. 25 / 43
  • 26. Operadores l´ogicos Estos operadores permiten agrupar operadores relacionales: & Y | O ∼ Negaci´on l´ogica x y Y & | O ∼ de O 1 1 1 1 0 1 0 0 1 0 0 1 0 1 0 0 0 0 0 1 26 / 43
  • 27. Ejercicios: operadores l´ogicos Ejercicio 1.5. Suponga tenemos informaci´on del sexo (1=mujer) y la edad de 8 personas: sexo=[1,0,1,0,0,1,0,1] y edad=[16,19,21,20,15,27,42,21]. - Pruebe la siguiente orden: data=[edad , sexo ]. - Cree un vector llamado mujerMenor, que sea igual a 1 en el caso de mujeres menores de edad (tenga pendiente nombrar la variable indicador en funci´on del grupo que toma el valor de 1). - Cree un vector hombreOmayor, que sea igual a 1 en el caso de que la persona sea hombre o mayor de edad. - Utilice la funci´on sum para contabilizar el total de hombres mayores de edad. - Presente todos los vectores anteriores un una sola matriz de datos. 27 / 43
  • 28. funciones l´ogicas: Any any es una funci´on vectorizada de Matlab que permite verificar si al menos uno (1) de los elementos de un objeto en Matlab (sea vector o matriz) cumple con una condici´on determinada. >> edad=[7 9 15 17 12 13]; >> any(edad>17) (ans 0) >> edad=[7 9 15 17 12 13 18]; >> any(edad>17) (ans 1) 28 / 43
  • 29. funciones l´ogicas: All All es una funci´on vectorizada que permite verificar si todos los elementos de un objeto en Matlab (sea vector o matriz) cumple con una condici´on determinada, especificada mediante indexaci´on l´ogica. >> edad=[7 9 15 17 12 13]; >> all(edad>17) (ans 0) >> edad=[7 9 15 17 12 13 18]; >> all(edad>17) (ans 0) >> edad=[21 23 25 26 18]; >> all(edad>17) (ans 1) 29 / 43
  • 30. Indexaci´on de valores mediante find En muchas ocasiones, necesitamos conocer la posici´on (´ındice) que ocupa cierto valor a lo interno de nuestro vector, en tales casos utilizamos la funci´on find. >> x=[4,7,8,9,10]; >> find(x==8) Tambi´en podemos anidar funciones, suponga a testeado diversos autoregresivos Ar(p) para determinar el orden ´optimo de rezagos a partir del m´ınimo de alg´un criterio de informaci´on: >> find(x==min(x)) 30 / 43
  • 31. Ejercicios: operadores l´ogicos Ejercicio 1.6. Continu´e con el ejemplo 1.4 e indique en que d´ıa ambos apostadores obtuvieron iguales resultados. - Indique el d´ıa en que obtuvieron las mayores perdidas. - Indique los d´ıas en que ambos registraron perdidas. Reflexione La diferencia entre operador de asignaci´on (=) y el operador relacional (==). 31 / 43
  • 32. Ejercicios: operadores l´ogicos Ejercicio 1.7. Ha estimado un modelo VAR, y desea identificar cual es el retardo que minimiza el criterio de informaci´on AIC, para identificar el orden de retardo del VAR a partir de la informaci´on contenida la siguiente tabla. Utilice el comando find para identificar el orden de retardo que debe utilizar. Retardos 1 2 3 4 5 6 AIC 0.012 0.11 0.109 0.1092 0.1097 0.11 32 / 43
  • 33. Operador Colon Muchos vectores y operaciones siguen una determinada secuencia, el operador colon (:) permite realizar este tipo de operaciones de forma sencilla: >> anios=[2000:2010] Adem´as, podemos indicar los saltos deseados en la secuencia del vector: >> 1:2:10 33 / 43
  • 34. Ejercicios: secuencias Ejercicio 1.7. Continuando con el ejercicio 1.5, utilice el vector edad para realizar las siguientes operaciones utilizando indexaci´on mediante el operador colon: - Acceda a las 4 primeras posiciones del vector. - Acceda a todas, excepto la ´ultima posici´on del vector. - Acceda a toda las posiciones pares del vector. - Cree un nuevo vector llamado edadpar, que sea igual al vector edad pero donde todos los valores pares del mismo sean iguales a cero. 34 / 43
  • 35. Ejercicios: secuencias Ejercicio 1.8. En un estudio de estacionalidad tenemos una serie mensual para tres a˜nos: - Cree un vector llamado mes donde se repita la secuencia de n´umeros del 1 al 12 (1:12) de forma que cada uno indique un mes determinado (mes=[1:12, 1:12, 1:12]). - Cree un nuevo vector llamado dic, que sea igual a 1 durante el mes de diciembre y cero en los dem´as casos. - Cree un nuevo vector llamado juliDic que sea igual a 1 durante el mes de diciembre o julio, y cero en los dem´as casos. - Cree otro vector llamado trim, que sea igual a 1 durante los primeros tres meses del a˜no y cero en los dem´as casos. 35 / 43
  • 36. Indexaci´on con operador colon Tambi´en podemos utilizar el operador para acceder a partes de un vector: >> edad(1:5) >> edad([2 4:7]) >> edad(1:end) >> edad(1:end-1) 36 / 43
  • 37. Ejercicios Ejercicio 1.9. Obtenga el siguiente vector x=[4 5 8 6 3 2 1 4 5 2] para intentar anticipar los siguientes resultados: >> x(3) >> x(2:4) >> x(1:end) >> x([3 4 6]) >> x(end-3:end) >> x(1:end-1) >> x(5:-2:1) >> x(1:2:end) >> x(x>4) >> x(x>mean(x)) >> x(x>mean(x))=0 37 / 43
  • 38. Secuencias: repmat La funci´on repmat nos permite generar secuencia de vectores (matrices) ya creadas: >> edad=[10 15 20] >> repmat(edad, 2) >> repmat(edad, 1) >> repmat(edad, [1 2]) >> repmat(edad, [2 1]) 38 / 43
  • 39. Vectores de texto Hasta ahora hemos visto vectores num´ericos y l´ogicos, sin embargo, en muchas ocasiones es preciso contar con un vector de caracteres. Estos se crean en Matlab colocando el texto entre comillas simple, dentro de corchetes: >> sexo= { h m h m m } Note que podemos acceder a partes del vector y aplicar algunas funciones, pero no podemos realizar operaciones l´ogicas sobre el mismo: >> sexo(1) >> sort(sexo) >> sexo== h Undefined operator == for input arguments of type cell . 39 / 43
  • 40. Vectores categ´oricos En el an´alisis econ´omico, especialmente de bases de hogares, suele ser bastante ´util transformar los vectores texto en categ´oricos, debido a que permite trabajar operadores l´ogicos sobre los mismos. >> sexoC=categorical(sexo) >> sum(sexoC==’m’) Tambi´en es posible renombrar los elementos dentro de un vector. >> sexoC1=categorical(sexo, {’h’ ’m’}, {’Hombre’ ’Mujer’}) 40 / 43
  • 41. Ejercicios: vectores de texto Ejercicio 1.10. suponga en unas elecciones han participado tres partidos (a b c) obteniendo los siguientes votos [1425 7812 2564]: - Determine, mediante el comando find, cual ha sido el partido ganador. 41 / 43
  • 42. Bibliograf´ıa 1 Attaway, Stormy (2013). A Practical Introduction to Programming and Problem Solving Department of Mechanical Engineering, Boston University. Third Edition. 2 Madoz, A. and Etxeberria, P. (2015). Notes on Matlab. University of the Basque Country, UPV/EHU. January 3 MathWorks (2015). MATLAB Language Reference. Language Reference Manual version 4 Barcelona GSE. 4 Moore, Holly (2008). MATLAB para ingenieros. Pearson Prentice Hall. 42 / 43
  • 43. Gracias!!! Fundaci´on para el Avance de las Matem´aticas (FAMA) Curso de fundamentos de Matlab para el an´alisis econ´omico 43 / 43