You are on page 1of 4

Gua A

Construccin de matrices
La forma ms sencilla de declarar un array es colocar sus elementos entre
brackets [] (Alt+91, Alt+93). Para separar los elementos se usa espacios, para
separar filas se usa punto y coma (;).
A = [1 2 3; 4 5 6; 7 8 9]
D = [0;1;0]
Se pueden unir los arrays, siempre que sea conformable la operacin:
[A D]
Sin embargo lo siguiente producir un error:
[A; D]
Tambin se pueden unir en la misma matriz:
F=[[11 14;12 15] [55;25] ]

Manejo de matrices
Accediendo a sub-matrices
Creamos dos matrices A y B de valores aleatorios:
A = rand(6,6)
B = rand(6,4)
Se desea acceder a las primeras tres entradas de la cuarta columna de A:
A(1:3,4)
Se desea acceder a las primeras cuatro entradas de la tercera columna de B:
B(1:4,3)
La tercera columna de A
A(:,3)
Las primeras cuatro filas de A:
A(1:4,:)
La matriz formada por la columna 2 y 3 de A:
A(:,[2 3])
Reemplazar las columnas 2,4 y 6 de A con las columnas 1 a 3 de B:
A(:,[2 4 6]) = B(:,1:3)
Funciones para construir matrices:
rand
Crea matrices de nmeros aleatorios
randn Crea matrices de nmeros aleatorios de la funcin de distribucin normal
eye
Matriz identidad
zeros Matriz de ceros
ones
Matriz de unos
diag
Crea o extrae la matriz diagonal
triu
Matriz triangular superior
tril
Matriz triangular inferior

Por ejemplo:
Crear una matriz de nmeros aleatorios entre 0 y 8 de orden 3x3.
randi([0 8],3])
Crear una matriz de nmeros aleatorios entre 1 y 7 de orden 3x2.
randi([1 7],[3,2])
Obtener la matriz triangular superior de A:

Alfonso Ayala Loro.

Pgina| 1

Informtica para Economistas. Aulas: 218-D, 218-T, 218-N

triu(A)
Crear una matriz de ceros de 3x4
C=zeros(3,4)
Para obtener informacin sobre la dimensin de una matriz se puede
usar:
size(A)
Utilizando la forma de unir matrices del acpite anterior:
[eye(4) diag([1 2 3 4])]
[zeros(3,4) ones(3,3)]
En la primera fila, obtener los elementos desde la tercera columna
hasta la ltima
B(1,3:end)
En la tercer fila, obtener los elementos desde la segunda columna
hasta la ltima
B(3,2:end)
En la ltima columna obtener los elementos de la misma, excepto el
ltimo
B(1:end-1,end)
Obtener todas las filas de la columna 4 de la matriz B:
B(:,4)
(En este caso los dos puntos (:), funcionan como todos los elementos
de esta dimensin, en este caso la columna).
Si quisiera obtener los elementos de la segunda fila:
B(2,:)
Si quisiera obtener los 4 primeros elementos comenzando en la primera
columna:
A([1 2 3 4])
(Note que la salida es un array plano, es decir un vector fila).
Todos los elementos en un vector columna:
A(:)
En la fila 1, se asigna valores uno.
B(1,:) = ones(1,4)
En la columna 4, se asigna valores -1.
B(:,4) = -1
Si en la operacin anterior se hubiese colocado la columna 3, la
matriz B se expande.
B(:,3) = -1
Borra los elementos de la columna 2, contrayendo el orden de la
matriz.
B(:,2) = []
Se asigna a la fila 7, la columna 4 el valor 3, el resto de la fila se
llena con ceros, ntese que la matriz se expande.
B(7,3) = 3

Alfonso Ayala Loro.

Pgina| 2

Informtica para Economistas. Aulas: 218-D, 218-T, 218-N

Para construir una matriz que muestre si se ha cumplido ciertas


condiciones lgicas se utiliza el find().
Construyamos una matriz de 2x4 aleatoria, redondeando al entero ms
bajo:
F = floor( 5*rand(2,4) )
Matriz de 1 y 0 si se cumplen la condicin de que los elementos sean
mayores a 3
F>3
Obtener los elementos que cumplen la condicin anterior:
F(ans)
Se asigna en la matriz F, el valor NaN, si el valor del elemento es
0.
F(F==0) = NaN
Se puede obtener directamente los elementos de F mayores a 3:
find(F>3)

Operaciones con matrices


Sean dos matrices:
A=[1 2 3; 4 5 6; 7 8 9];
D=[0 0 1; 0 0 1; 0 0 1];
Obtener:
A - 3*D

Alfonso Ayala Loro.

Pgina| 3

Informtica para Economistas. Aulas: 218-D, 218-T, 218-N

Cdigos ASCII importantes


35
38
39
91
93
123
124
125
126

#
&

[
]
{
|
}
~

Alfonso Ayala Loro.

Pgina| 4

Informtica para Economistas. Aulas: 218-D, 218-T, 218-N