Вы находитесь на странице: 1из 8

LENGUAJE MATRICIAL: (capítulo 11-17)

Los siguientes objetos pueden ser creados y manipulados usando el lenguaje de comandos matricial.

matrix -------- sym(matriz simétrica)------ scalar ---------- rowvector(vectorfila) -------- coef(vector columna de los coeficientes que
utilizarán los objetos de ecuación, sistema, grupo, logl y sspace.
Los anteriores objetos serán nombrados objetos matriciales, aunque no lo sean.
Al momento de declarar el objeto matricial, Eviews supondrá que solo hay un elemento en el objeto.

EJM: Usos del fill


vector v=@fill(3,6,1,7,8) ‘ se crea el vector y se llenara de 5 elementos.
vector(5) qtal1 ‘ primero creas el vector
qtal1.fill 4,10,5,5,3 ‘ luego se rellena con .fill
matrix(2,4) yes ‘ notar que primero se rellena las columnas.
yes.fill 1,2,3,4,5,6,7,8 ‘ NOTAR QUE SE EMPLEA COMAS
yes.fill(b=r) 1,2,3,4,5,6,7,8 ‘ de esta manera primero se rellena las filas.
matrix(3,3) name
name.fill(l) 1,0,-1 ‘la opción “l” para llenar la matriz hasta que se agoten los elementos de la matriz.

ASIGNACIONES MATRICIALES:
EJM: matrix(10,2) zdata=5 ‘ notar que “zdata” es de 10x2
matrix ydata=zdata ‘ luego “ydata” también será de 10x2
matrix(10,10) xdata=ydata ‘ aunque definas dimensión 10x10 a “xdata” al igualarlo a “ydata” de 10x2
‘ se fuerza a “xdata” a tener una dimensión de 10x2

COPIAR DATOS ENTRE OBJETOS:


A veces, es posible que desee mover datos entre diferentes tipos de objetos de matriz. Por ejemplo, es posible que desee tomar
los datos de un vector y ponerlos en una matriz.
En otras ocasiones, es posible que desee mover datos entre un objeto de matriz y una serie u objeto grupo. Hay un conjunto
separado de herramientas que le permiten convertir datos en una variedad de tipos de objetos.

COPIA DE DATOS DE OBJETOS MATRIZ:


Eviews puede cambiar el tamaño del objeto para que contenga la misma información del objeto que esta al lado derecho de la
ecuación.

Las reglas básicas que rigen las expresiones de la forma "Y = X" se pueden resumir de la siguiente manera:
• El tipo de objeto Y no puede cambiar.
• El objeto Y, si es posible, se redimensionará para coincidir con el objeto X; de lo contrario, EViews emitirá un error. Por lo
tanto, la asignación de un vector a una matriz redimensionará la matriz, pero la asignación de una matriz a un vector generará
un error si la matriz tiene más de una columna.
[objeto scalar=objeto matrix] and [objeto vector=objeto sym] botan error.
• Los datos en X se copiarán en Y.
Las excepciones específicas a las reglas dadas arriba son:
• Si X es un escalar, Y mantendrá su tamaño original y se llenará con el valor de X.
• Si X e Y son objetos vectoriales o de tipo rowvector, Y se cambiará al mismo tipo que X.

COPIAR DATOS DE PARTES DE OBJETOS MATRIX:


Supongamos primero que está interesado en copiar datos de una matriz en un vector. Los siguientes comandos copiarán datos
de M1 y SYM1 en los vectores V1, V2, V3 y V4.
matrix(10,10) m1
sym(10) sym1
vector v1=@vec(m1) ‘ @vec crea un vector de 100 elementos(columnas apiladas de “m1”)
vector v2=@columnextract(m1,3) ‘ “v2” será un vector de 10 elementos de la 3° columna de “m1”
vector v3=@rowextract(m1,4) ‘ “v3” tendrá 10 elementos de la 4° fila de “m1”
vector v4=@columnextract(sym1,5) ‘ “v4” tendrá 10 elementos de la 5° columna de “sym1”

Se puede obtener un subconjunto de filas o columnas de una matriz usando los miembros de datos de objetos @row , @col ,
@droprow o @dropcol
vector a=x.@row(3) ‘ extrae la 3° fila de X en el vector “a”.
vector b=x.@col(2) ‘ extrae la 2° columna de X en el vector “b”.
También puede copiar datos de una matrix a un más pequeña matrix usando @subextract.
EJM: matrix(20,20) m1=1
matrix m2=@subextract(m1,5,5,10,7) ‘“m2” es de 6x3 que contiene una submatriz de “m1” (5,5):(10,7)
matrix m3=@subextract(m1,5,10) ‘ “m3” es de 16x11 tomada de “m1” en (5,10) hasta (20,20)
matrix m4=m1 ‘ “m4” es una copia exacta de “m1”
También se puede usar las funciones de miembro de datos para realizar operaciones similares.
matrix xsub=x.@row(@fill(1,3,4)) ‘ extrae la 1°, 3° y 4°ta fila de la matrix X en la matriz “xsub”.
Los datos de una matriz pueden copiarse en otro objeto de matriz utilizando los comandos colplace , rowplace and matplace
matrix(100,5) m1=0
matrix(100,2) m2=1
vector(100) v1=3
rowvector(100) v2=4
matplace(m1,m2,1,3) ‘ coloca “m2” en “m1” comenzando en la fila 1 y columna 3
colplace(m1,v1,3) ‘ “v1” se coloca en la columna 3 de “m1”
rowplace(m1,v2,80) ‘ “v2” se coloca en fila 80 de “m1”
Se puede combinar matplace con @fill
matplace(z,x.@row(@fill(1,3,4)),1,1)
‘coloca las filas 1,3 y 4 de la matriz “X” en la esquina superior izquierda de Z.
Tenga en cuenta que Z debe ser lo suficientemente grande para contener el subconjunto X.
COPIAR DATOS ENTRE LA MATRIZ Y OTROS OBJETOS
En esta sección, describimos técnicas para copiar datos entre objetos matriciales y objetos EView basados en archivos de trabajo, como series
y grupos.
Tenga en cuenta que hay dos diferencias principales entre la serie ordinaria u objetos de grupo y los objetos de la matriz.
Primero, las operaciones que involucran series y grupos usan información sobre la muestra del archivo de trabajo actual,
mientras que los objetos de la matriz no. En segundo lugar, existen diferencias importantes en el manejo de valores perdidos
(NA) entre los dos tipos de objetos.

ASIGNACIÓN DIRECTA:
Primero, EViews usa solo las observaciones en la muestra actual al copiar los datos. En segundo lugar, se omiten las
observaciones que contienen datos faltantes (NA) para una serie o para cualquier serie del grupo. Por lo tanto, si la muestra
actual contiene 20 observaciones, pero la serie o grupo contiene datos faltantes, la dimensión del vector o matriz de salida
será menor que 20.
smpl 1963m03 1993m06
fetch hsf gmpyq
group mygrp hsf gmpyq
vector xvec = gmpyq
matrix xmat = mygrp
FUNCIONES MATRICIALES:
@convert(s) ‘ toma un objeto de serie/grupo y devuelve vector/matriz.
‘También permite un objeto de muestra EJM: @convert(s,“1990m1 1999m3”)
‘El problema es que @convert excluye los NAs, por lo que la dimensión puede ser menor.
EJM: sample s1.set 1950 1990 ‘ la muestra se define en “s1”
matrix x=@convert(grp,s1)
sym y=@inverse(@inner(@convert(grp,s1)))

stom(s,m) ‘ De serie/grupo a vector/matriz.


‘ También permite objeto de muestra. También excluye los NAs.
‘ Es un comando y no se puede incluir en una expresión de matriz.
stomna(s,m) ‘ No excluye los valores faltantes(NAs).
mtos(m,s) ‘ matriz/vector a grupo/serie (ya existente).

@cfirst(m) ‘ Devuelve un vector conteniendo el primer valor <>NA de cada columna de la matriz “m”.
@cifirst(m) ‘ Devuelve un vector de índice(# de fila) donde se encuentra el primer valor.
@cilast(m) ‘ Devuelve un vector conteniendo el último valor <>NA de cada columna de la matriz “m”.
@clast(m) ‘ Devuelve un vector de índice(# de fila) donde se encuentra el último valor.
@cimax(m) ‘ Devuelve un vector conteniendo los índices donde se ubica el Máximo de cada columna.
@cimin(m) ‘ Devuelve un vector conteniendo los índices donde se ubica el Mínimo de cada columna.
@cmax(m) ‘ Devuelve un vector conteniendo el Máximo valor de cada columna de la matriz “m”.
@cmin(m) ‘ Devuelve un vector conteniendo el Mínimo valor de cada columna de la matriz “m”.
@cmean(m) ‘ Devuelve un vector conteniendo la Media de cada columna de la matriz “m”.
@cmedian(m) ‘Devuelve un vector conteniendo la Mediana de cada columna de la matriz “m”.
@cnas(m) ‘ Devuelve un vector conteniendo el número de NAs de cada columna de la matriz “m”.
@cobs(m) ‘ Devuelve un vector conteniendo el número de Observaciones<>NA de cada columna de m.
colplace(m,v,n) ‘ Coloca el vector “v” en la matriz “m” en la columna “n”. #filas deben coincidir.
@colranks(m,”d”) ‘ Devuelve una matriz donde cada columna contiene la clasificación de los valores de
la columna correspondiente de “m”. La opción controla la dirección de la
clasificación: “a” (ascendente) o “d” (descendente)
@capplyranks(m,v,n) ‘ Reordena las filas de una matriz “m” usando los rangos en el vector “v”.
Si se especifica “n”, solo se reordenarán las filas en la columna “n”.
“v” debe contener enteros únicos desde 1 hasta el número de filas de “m”.
@columnextract(m,n) ‘ Extrae un vector correspondiente a la columna “n” de la matriz “m”.
@columns(o) ‘Devuelve el número de columnas de “o” (matrix,vector,rowvector,sym,scalar,series).
@colsort ‘ Devuelve una matriz donde cada columna contiene los valores ordenados de la columna
correspondiente de “m”. La opción controla la dirección de la clasificación
“a”(ascendente) o “d” (descendente).
@cor(v1,v2) ‘ Devuelve número de correlación. (v1,v2) pueden ser vector/rowvector/series
@cor(o) ‘ Devuelve matriz de correlaciones. (o) puede ser matrix/group
@cov(v1,v2) ‘ Devuelve número de covarianza. (v1,v2) pueden ser vector/rowvector/series
@cov(o) ‘ Devuelve matriz de covarianzas. (o) puede ser matrix/group
@covp ‘ Divide entre “n” ya que es covarianza poblacional.
@covs ‘ Divide entre “n-1” ya que es covarianza muestral.
@cprod(m) ‘ Devuelve un vector conteniendo el producto de los valores de una columna de “m”.
@cquantile(m,q) ‘ Devuelve un vector con el “q” cuantil de las columnas de “m”.
@cstdev(m) ‘ Devuelve un vector con la desviación estándar muestral de cada columna de “m”.
@cstdevp(m) ‘ Devuelve u vector con la desviación estándar poblacional de cada columna de “m”.
@cstdevs(m) ‘ Devuelve un vector con la desviación estándar muestral de cada columna de “m”.
@csum(m) ‘ Devuelve un vector conteniendo la suma de los valores de cada columna de “m”.
@csumsq(m) ‘Devuelve un vector conteniendo la suma cuadrada de los valores de cada columna de “m”
@cvar(m) ‘ Devuelve un vector conteniendo la varianza poblacional de cada columna de “m”.
@cvarp(m) ‘ Devuelve un vector conteniendo la varianza poblacional de cada columna de “m”.
@cvars(m) ‘ Devuelve un vector conteniendo la varianza muestral de cada columna de “m”.
@det(m) ‘ El determinante de la matriz cuadrada o sym.
@ediv(m1,m2) ‘ Devuelve una matriz cuyo elemento es cada elemento de “m1” dividido por elemento
de “m2”.
@eeq(m1,m2) ‘ Devuelve una matriz dummy, cada elemento=1 si m1(i,j)=m2(i,j) , caso contrario es 0.
@eeqna(m1,m2) ‘ Devuelve una matriz dummy. Donde las NAs se tratan como valores ordinarios.
@ege(m1,m2) ‘ Devuelve una matriz dummy. Si los m1(i,j)>=m2(i,j) entonces equal to 1, sino es 0.
@egt(m1,m2) ‘ Devuelve una matriz dummy. Si los m1(i,j)>m2(i,j) entonces equal to 1, sino es 0.
@eigenvalues(s) ‘ Devuelve un vector con los valores propios de “s”(sym). Ordenados ascendente
@eigenvectors(s) ‘ Devuelve una matriz con los vectores propios de “s”(sym).
Columna asociada al valor propio, por ello ordenado ascendentemente.
@einv(m) ‘Devuelve una matriz donde cada elemento es 1/m(i,j).
@ele(m1,m2) ‘Devuelve una matriz dummy donde 1 es cuando m1(i,j)<=m2(i,j) y 0 cuando m1(i,j)>m2(i,j).
@elt(m1,m2) ‘ Devuelve una matriz dummy donde 1 es cuando m1(i,j)<m2(i,j) y 0 cuando m1(i,j)>=m2(i,j).
@emax(m1,m2) ‘ Devuelve una matriz con los elementos máximos de m1 y m2.
@emin(m1,m2) ‘ Devuelve una matriz con los elementos mínimos de m1 y m2.
@emult(m1,m2) ‘ Devuelve una matriz cuyo elemento es resultado de m1(i,j)*m2(i,j)
@eneq(m1,m2) ‘ Devuelve una matriz dummy donde 1 es cuando m1(i,j)<>m2(i,j) y 0 cuando m1(i,j)=m2(i,j)
@eneqna(m1,m2) ‘Devuelve una matriz dummy donde 1 es cuando m1(i,j)<>m2(i,j) y 0 cuando m1(i,j)=m2(i,j)’ incluyendo NAs.
@epow(m1,o) ‘ Devuelve una matriz donde m1(i,j)^(o(i,j)) donde “o” puede ser un matriz, scalar, número.
@erecode(m3,m1,m2) ‘ Devuelve una matriz tiene como argumentos matrices m1,m2,m3.
@sign(m1) ‘ Devuelve una matriz de -1,0,1 dependiendo del signo correspondiente a m1(i,j).
@bounds(m3,m1,m2) ‘ Devuelve m3(i,j) si m3(i,j) está entre m1 y m2 en caso contrario los valores de límite m1(i,j) y m2(i,j).
@explode(s) ‘ Crea una matriz cuadrada a partir de un sym, s, duplicando los elementos del triángulo inferior en el triángulo
superior.
@fill(n1,n2,…) ‘ Los argumentos son escalares , Devuelven un vector conteniendo los argumentos.
@filledmatrix(n1,n2,n3) ‘ Devuelve una matriz con “n1” filas y “n2” columnas, donde cada elemento es = “n3”.
@filledrowvector(n1,n2) ‘ Devuelve un vector fila con “n1” columnas, donde cada elemento contiene el valor de “n2”.
@filledsym(n1,n2) ‘ Devuelve un sym de con “n1” filas y columnas donde cada elemento es =“n2”.
@filledvector(n1,n2) ‘ Devuelve un vector de “n1” filas, donde cada elemento es =“n2”.
@first(o) ‘Devuelve un escalar con el primer elemento de “o” (argumento puede ser serie o vector). Argumento serie usa la
muestra del archivo de trabajo actual.
@getmaindiagonal(m) ‘ Devuelve un vector creado con los elementos de la diagonal principal de la matriz “m”.
@hcat(m1,m2) ‘ Devuelve una matriz resultado de una concatenación horizontal entre “m1” y “m2”(deben tener =#filas) Commented [cjvc1]: Si m1 es una matriz con k filas y m
@identity(n) ‘ Devuelve la matriz identidad de orden “n”. columnas, y m2 es una matriz con k filas y n columnas,
@ifirst(o) ‘ Devuelve el índice conteniendo el primer valor <>NA. “o” puede ser un vector o serie. entonces @hcat devolverá una matriz con k filas y (m + n)
@ilast(o) ‘ Devuelve el índice conteniendo el último valor <>NA. “o” puede ser un vector o serie. columnas.
@imax(o) ‘ Devuelve el índice conteniendo el máximo valor <>NA . “o” puede ser un vector o serie.
@imin(o) ‘ Devuelve el índice conteniendo el mínimo valor <>NA. “o” puede ser un vector o serie.
@implode(m) ‘ Forma un sym copiando el triángulo inferior de una matriz. Commented [cjvc2]: Asegúrese de saber qué está
@inner(v1,v2,smp) ‘ “v1”,“v2” pueden ser vector, rowvector o series pag(714) haciendo si la matriz original no es simétrica: esta función
@inner(o) ‘ El objeto “o” puede ser un vector/matriz el resultado sería escalar/sym. no verifica la simetría.
@inverse(m) ‘ Devuelve la inversa de “m” que puede ser un sym/matriz a sym/matriz. Commented [cjvc3]: Puedes definir la muestra (smpl)
@isingular(o) ‘ Devuelve 1 si la matriz es singular y 0 cuando la matriz no lo es.
Commented [cjvc4]: también pueden ser series o grupos.
@kronecker(o1,o2) ‘ Si “o1” es de mxn y “o2” de pxq, entonces el producto Kronecker será de mpxnq.
cada elemento del “o1”se multiplica por la matriz completa “o2”. Commented [cjvc5]: tamaño del “sym” es el número de
@last(o) ‘ Devuelve el último valor<>NA de la serie o vector. columnas de la matriz o grupo. Donde cada elemento es el
producto interno de 2 columnas.
@makediagonal(v,k) ‘ Crea una matriz cuadrada con el vector o vector de fila especificado, v, en la diagonal k-ésima con
respecto a la diagonal principal, y pone a cero la diagonal. Si no se proporciona ningún valor k o si k se establece en 0, la
matriz sym resultante tendrá el mismo número de filas y columnas que la longitud de v, y tendrá v en la diagonal
principal. Si se proporciona un valor para k, la matriz tiene el mismo número de filas y columnas que el número de
elementos en el vector más k, y colocará v en la desviación diagonal de la principal por k.
sym s1 = @makediagonal(v1)
matrix m2 = @makediagonal(v1,1)
matrix m4 = @makediagonal(r1,-3)
S1 contendrá V1 en la diagonal principal; M2 contendrá V1 en la diagonal inmediatamente arriba de la diagonal
principal; M4 contendrá R1 en las diagonales 3 posiciones debajo de la diagonal principal. Usar el parámetro k opcional
puede ser útil para crear matrices de covarianza para modelos AR.
matrix(10,10) m1
vector(9) rho = .3
m1 = @makediagonal(rho,-1) + @makediagonal(rho,+1)
m1 = m1 + @identity(10)
Para hacer una matriz diagonal con los mismos elementos en la diagonal, puede usar @identity, multiplicado por el
valor escalar.
@matplace(m1,m2,n1,n2) ‘ Coloca el objeto matriz m2 en m1 en la fila n1 y la columna n2. Los tamaños de las dos matrices no
importan, siempre que m1 sea lo suficientemente grande como para contener todos los m2 con la celda superior izquierda de
m2 colocada en la fila n1 y la columna n2.
@maxes(m,n) ‘ Devuelve un vector con los “n” mayores de “m” ordenados de mayor a menor.
@mins(m,n) ‘ Devuelve un vector con los “n” menores de “m” ordenados de menor a mayor.
@mnrnd(n1,n2) ‘ Devuelve una matriz/sym/vector. con números aleatorios normales N(0,1) de tamaño n1xn2.
@mrnd(n1,n2) ‘ Devuelve una matriz/sym/vector. con números aleatorios uniformes de U(0,1) de tamaño n1xn2.
@norm(o,n) ‘ Devuelve un escalar. Donde “o” puede ser matriz/vector/rowvector/sym/scalar/series.
Devuelve el valor de la norma de cualquier objeto de matriz(“o”).
La opción de tipo “n” incluyen (-1) para la norma de infinito, (0) para la norma de Frobenius y un número
entero “n” para la norma de L^n. Si no se proporciona un tipo de norma, la función devuelve la norma de infinito.
nrnd(m) ‘ Donde “m” puede ser una matriz/vector/sym. Llena el objeto matricial con números aleatorios normales.
@ones(n1,n2) ‘ Crea un vector/matriz/sym lleno con el valor 1. El tamaño de la matriz creada está dado por los números
enteros n1 (número de filas) y n2 (número de columnas).
@outer(v1,v2) ‘ Devuelven una matriz resultado del producto cruzado entre v1/v2. pueden ser vector/rowvector/series. Commented [cjvc6]: “v1” tratado como vector columna y
@permute(m1) ‘ Devuelve una matriz resultado de un reordenamiento aleatorio de la filas de “m1”. “v2” tratado como vector fila, cuyo producto devuelve una
@pinverse(m) ‘ Devuelve el pseudoinverso de Moore-Penrose de un objeto de matriz o sym. El pseudoinverso tiene la matriz.
propiedad de que tanto la multiplicidad previa como la posterior multiplicación de la pseudoinversión por la
matriz de origen devuelve la matriz de origen, y que tanto la multiplicación previa como la posterior
multiplicación de la matriz de origen por la pseudoinversión devolverán la inversa. El pseudoinverse de una
matriz devuelve una matriz, mientras que el pseudoinverso de una sym devuelve un sym. Tenga en cuenta que
pseudoinvertir un sym es mucho más rápido que invertir una matriz.
@qform(s,o) ‘ “s” es el objeto sym. Si “o” es un vector devolverá un escalar; en cambio si “o” es una matrix/sym devolverá sym
@qform devuelve la forma cuadrática de una matriz simétrica con otra matriz o vector. Si S es la matriz
simétrica, y v es un vector, @qform devolverá v'S * v, lo que dará como resultado un escalar.
Si S es una matriz simétrica y m es una matriz, entonces @qform devuelve m'S * m, que es una matriz
simétrica.
@rank(o,order,ttes) ‘ Devuelve los rangos de los elementos de un objeto matriz “o”. Los argumentos opcionales controlan el Commented [cjvc7]: string(opcional)
comportamiento del ranking.
Commented [cjvc8]: string(opcional)
Tenga en cuenta que clasificar una matriz clasifica cada elemento de la matriz y organiza los
resultados por columna para que coincidan con los elementos de la matriz original.
La primera opción controla la dirección del ranking:
• "a" (ascendente - predeterminado) o "d" (descendente) La segunda opción controla el manejo de
ataduras:
• Los vínculos se rompen de acuerdo con el ajuste de t: "i" (ignorar), "f" (primero), "l" (último), "a"
(promedio - predeterminado), "r" aleatorizar.
Si desea especificar opciones de manejo de vínculos, también debe especificar la opción de orden (por
ejemplo, '@ ranks (x, "a", "i")'). devuelve el ranking ascendente entero único para los datos en X con
ignorar vínculos.
@rapplyranks(m,v,n) ‘ Donde “m” puede ser vector/matrix/sym y “v” es vector y “n” es opcional.
Devuelve vector/matrix/sym.
Reordenar las columnas de una matriz “m” usando los rangos en el vector v. Si se especifica el
argumento opcional n, solo las columnas en la fila “n” se reordenarán. v debe contener enteros únicos
desde 1 hasta el número de filas de “m”.
matrix m2=@rapplyranks(m1,v1) ‘ reordena la columna de la matriz usando los rangos en v1
matrix m3=@rappyranks(m1,v1,3) ‘ reordena la columna en la fila 3 de m1.
Tenga en cuenta que puede usar la función @ranks para obtener los rangos de un vector. La
obtención de una clasificación de enteros única para datos con vínculos requiere el uso de la opción
"i" o "r" en @riesgos. Como
vector y=@ranks(x,“a”,“i”)

@resample(m1,n2,n3,v4) ‘ Matriz “m1”, entero “n2”, entero positivo “n3”, vector “v4”. Devuelve una matriz. Commented [cjvc9]: argumentos opcionales.
Esta función devuelve una matriz cuyas filas se dibujan al azar con reemplazo de las filas de la matriz de
entrada.
n2 representa el número de filas "extra" que se extraerán de la matriz. Si la matriz de entrada (m1) tiene r
filas y c columnas, la matriz de salida tendrá r + n2 filas y c columnas. Por n2 = 0 por defecto.
n3 representa el tamaño de bloque para el procedimiento de remuestreo. Si especifica n3> 1, se dibujarán
bloques de filas consecutivas de longitud n3 con reemplazo desde la primera r-n3 + 1 filas de la matriz de
entrada.
Puede proporcionar un nombre para el vector v4 que se utilizará para el remuestreo ponderado. El vector de
ponderación debe tener una longitud r y todos los elementos deben ser no perdidos y no negativos. Si
proporciona un vector de ponderación, cada fila de la matriz de entrada se dibujará con probabilidad
proporcional a los pesos en la fila correspondiente del vector de ponderación. (Los pesos no deben sumar 1.
EVviews normalizará automáticamente los pesos).

rnd(m) ‘ “m” puede ser matriz/vector/sym. Llena la matriz “m” con números aleatorios uniformes de 0 a 1.
@rowextract(m,n) ‘ Extrae un rowvector de la fila “n” de la matriz “m”.
@rowplace(m,r,n) ‘Coloca el rowvector “r” en la matriz “m” en la fila “n”. El número de columnas en m y r debe coincidir, Commented [cjvc10]: “r” es un rowvector
y la fila n debe existir dentro de m.
@rowranks(m,order) ‘ Devuelve una matriz donde cada cada fila “i” contiene el RANKING de los valores de la fila “i” de “m”. Commented [cjvc11]: EJM: 5.5 |3.6| 7| 8.5
“order” es opcional y determina (“a” – ascendente ^ “d” – descendente). 2 |1 | 3 |4 EL RANKING “ascendente”
@rows(o) ‘“o” puede ser matriz/vector/rowvector/sym/series/group. 3 |4 |2 |1 y el ranking “descendente”
Devuelve el número de filas del objeto “o”.
@rowsort(m,order) ‘ Devuelve una matriz donde cada fila “i” contiene los valores “ordenados”(sort) de la fila “i” de “m”. Commented [cjvc12]: se coloca entre comillas “” como
“order” es opcional y determina (“a” – ascendente ^ “d” – descendente). un string
@scale(m,v,p) ‘ Devuelve matriz/sym and “m” puede ser matriz/sym.
Escala las filas o columnas de “m”.
• Si “m” es una matriz y “v” es un vector columna, la i-ésima fila de m será escalada por el elemento i-
ésimo de v, opcionalmente elevado a la potencia p (escala de filas). La longitud v debe ser igual al
número de filas de m.
• Si “m” es una matriz y “v” es un rowvector, la i-ésima columna de m se escalará por el elemento i-
ésimo de v, opcionalmente elevado a la potencia p (escala de columna). La longitud v debe ser igual al
número de columnas de m.
• Si “m” es un objeto sym, entonces “v” puede ser un vector o un rowvector. El elemento (i, j) -th de m
será escalado por los elementos i-ésimo y j-ésimo de v (escala de fila y columna).
La longitud v debe ser igual al número de filas (y columnas) de m.
Deje que M sea el objeto de la matriz, V sea el vector o el rowvector, y X ser la matriz diagonal
formada a partir de los elementos de V. Entonces @scale (m, v, p) regresa:
𝑋 𝑃 𝑀 Si M es matriz y V es vector
𝑀𝑋 𝑃 Si M es matriz y V es rowvector
𝑋 𝑃 𝑀𝑋 𝑃 Si M es sym

@solvesystem(o,v) ‘ Devuelve un vector. Donde “o” puede ser matriz/sym and “v” es vector.
Devuelve el vector X tal que 𝑀𝑥 = 𝑣 (resuelve el sistema de la ecuación lineal).
@sort(o,order,ties) ‘ Devuelve matrix/vector. Donde “o” es matrix/vector.
Devuelve los elementos ordenados de “o”.
Cuando “o” es matrix; cada elemento de la matriz se ordena y organiza por columna, Commented [cjvc13]: Tomando todos los elementos de
con el primer elemento en la primera fila de la primera columna y el último elemento en la última fila la matriz, Eviews los ubica en orden a partir de la primera
de la última columna. columna de M hasta la última columna de M.
order es un control opcional de dirección del ranking. (“a”-ascendente; “d” descendente)
ties es un control opcional de vínculo.
[“i”-ignorar; “f”-(first)primero; “l” -last(último); “a” -average(promedio); “r” (randomize) aleatorizar]

@subextract(o,n1,n2,n3,n4) ‘ Devuelve una matrix .


Donde “o” es vector/rowvector/matrix/sym
n1 y n2 son obligatorios; n3 y n4 son opcionales.
Devuelve una submatriz de “o”. n1 es la fila y n2 es la columna del elemento superior
izquierdo que se extraerá. Los argumentos opcionales n3 y n4 proporcionan la ubicación de Commented [cjvc14]: matrix
fila y columna de la esquina inferior derecha de la matriz. A menos que se proporcionen n3 y m2=@subextract(m1,5,9,6,11)
n4, esta función devuelve una matriz que contiene todos los elementos a continuación y a la
derecha del elemento de inicio. Se extrae la fila de 5 a 6 y la columna de 6 a 11.

@sdv(m1,v1,m2) ‘ Devuelve una matriz. Donde “m1” es matrix/sym, “v1” es vector, “m2” es matrix/sym.
Realiza una descomposición del valor singular "económica" o "fina" de la matriz m1, generando
resultados truncados cuando m1 no es cuadrado (explotando el rango máximo reducido de una matriz
no cuadrada). La matriz U es devuelta por la función, el vector v1 se rellenará (redimensionado si es
necesario) con los valores singulares y la matriz m2 se asignará (redimensionada si es necesario) a la
otra matriz, V, de la descomposición. La descomposición del valor singular satisface:
𝑚1 = 𝑈𝑊𝑉′
𝑈 ′ 𝑈 = 𝑉′𝑉 = 𝐼
donde W es una matriz diagonal con los valores singulares a lo largo de la diagonal. Los valores
singulares cercanos a cero indican que la matriz puede no ser de rango completo. Vea la función
@rank (p.715) para una discusión relacionada.
Sea r el número de filas de m1 y s el número de columnas de m1. m1 tiene como máximo t = min (r, s)
valores singulares distintos. En consecuencia, U tendrá las dimensiones r-by-t, v1 será t-by-1, y m2
será s-by-t.

@sdvfull(m1,m2,m3) ‘ Devuelve una matriz. Donde “m1” es matrix/sym, “m2” es matrix , “m3” es matrix/sym.
Realiza una descomposición de valor singular de la matriz m1. La matriz U es devuelta por la función,
la matriz m2 será asignada (redimensionada si es necesario) a la matriz W, y la matriz m3 será
asignada (redimensionada si es necesario) a la otra matriz, V, de la descomposición.
La descomposición del valor singular satisface:
𝑚1 = 𝑈𝑊𝑉′
𝑈 ′ 𝑈 = 𝑉′𝑉 = 𝐼
donde W es una matriz diagonal con los valores singulares a lo largo de la diagonal. Los valores
singulares cercanos a cero indican que la matriz puede no ser de rango completo. Ver la función
@rank (p. 715) para una discusión relacionada.

@trace(m) ‘Devuelve la traza de “m” que es matrix cuadrada(square) o sym(matriz simétrica). Commented [cjvc15]: Recordar que traza es suma de los
elementos de la diagonal.
@transpose(o) ‘Si “o” es matrix/vector/rowvector/sym; entones devolverá matrix/rowvector/vector/sym.
Mueve la ubicación de los elementos o(i,j) hacia o(j,i).

ttom(o1,o2, range=“cell range”,keepna) ‘ Donde “o1” es (tabla)/(vista del objeto en tabla); “o2” es vector/matrix. Commented [cjvc16]: Opcional- String que indica un
TTOM – viene de Table TO Matrix ---- de objeto tabla a matriz. rango de celdas de la tabla.
ttom llena la matriz, m1, con los valores numéricos contenidos en la tabla o1. m1 se Commented [cjvc17]: Opción para mantener las filas y
redimensionará apropiadamente. columnas que contienen todas las NA. -----keep(mantener).
Si se proporciona la opción “range=”, entonces podrás extraer solo una porción de la
Commented [cjvc18]: un comando de vista de objeto
tabla. Donde cell_range puede tomar las siguientes formas: que crea una vista de tabla desde un objeto
@all --- Aplicar a todas las celdas de la tabla.
cell ---- Identificador de celda Puede identificar celdas usando la letra de la
columna y el número de fila (por ejemplo, "A1"), o usando "R" seguido del
número de fila seguido de "C" y el número de columna (por ejemplo,
"R1C2"). Commented [cjvc19]: Significa que la celda escogida es
row,col ---Número de fila, seguido de letra o número de columna (por ejemplo, (fila 1, columna 2)
"2,C" o "2,3"), separados por ",". Aplicar a la celda. De row1, col2.
row ---Número de fila. Significa aplicar a todas las celdas en la fila. Commented [cjvc20]: Hay que recordar que el objeto
col ---Letra de la columna. Significa aplicar a todas las celdas en la columna. table muestra sus filas en números y sus columnas en texto.

(first_cell:last_cell) o También, (first_cell,last_cell) ---La celda superior izquierda Commented [cjvc21]: Importante este símbolo [:], pero
del rango de selección (especificada en formato "celda"), seguida por la celda también puede ser [,].
inferior derecha del rango de selección (especificado en formato "celda"), separados
por ":" o "," (por ejemplo, "A2: C10 "," A2, C10 ", o" R2C1: R10C3 "," R2C1, R10C3 ").
Aplicar a todas las celdas en la región rectangular definida por la primera celda y la
última celda.

(first_cell_row,first_cell_col,last_cell_row,last_cell_col) -- EJM: “2,1,10,3”


La celda superior izquierda del rango de selección (especificada en el formato "fila [,]
col"), seguida por la celda inferior derecha del rango de selección (especificada en el
formato "fila [,] col"), separada por un "," (ej., "2, A, 10, C" o "2,1,10,3"). Aplicar a
todas las celdas en la región rectangular definida por la primera celda y la última
celda.

Por defecto, cualquier fila o columna de la tabla que no contenga ningún número se eliminará de la matriz. la opción keepna
deshabilita esto.
ttom(table1,matrix1)
Crea un objeto de matriz, MATRIX1, que contiene los datos numéricos en el objeto de tabla TABLE1. Cualquier fila o columna de
la tabla que no contenga números (es decir, filas / columnas en blanco, o que solo contenga texto) se omiten en el proceso de
conversión.
ttom(table1,matrix1,keepna)
Realiza la misma conversión, pero esta vez cualquier fila o columna de la tabla que no contenga números se incluye en el
proceso de conversión como una fila / columna de NAs.
ttom(eq01.wald c(1)=0.3,matrix1)
Realiza una prueba wald de la restricción C (1) = 0.3 del EQ01, y guarda la salida numérica de esa prueba en el objeto matriz
MATRIX1.

@uniquevals(arg) ‘ Donde “arg” puede ser series/alpha/vector/matrix.


Devuelve un vector/svector que contiene la lista de únicos valores en el objeto especificado por arg.
Si arg es series/vector/matrix, @uniquevals devolverá un objeto vector que contiene los elementos únicos de
la serie, vector o matriz. Si arg es una serie alfa, @uniquevals devolverá un svector de los valores únicos en el
alfa.

@unitvector(n1,n2) ‘ Devuelve un vector. Crea un vector de n1 elementos con un "1" en el elemento n2-th y "0" en otro lugar.
vec v1=@unitvector(8,5) crea un vector de 8 elementos con un "1" en el quinto elemento y "0" para
los otros 7 elementos.
Nota: si en su lugar desea crear un vector de 10 elementos, debe usar una declaración de declaración
del formulario: vector v1=@ones(10)
@unvec(v,n) ‘ Crea una matriz n-fila llena con los elementos desapilados del vector v.
EViews informará una discrepancia de tamaño si el número de elementos de v no es divisible uniformemente
por n.
Tenga en cuenta que @unvec es el inverso de la función @vec.
EJM: vector v=@mrnd(12) ‘Creas un vector de 12 elementos con uniform random numbers
matrix m1=@unvec(v1,3) ‘ Creas una matriz con 3 filas, donde los elementos del vector “v” se desapilan. Commented [cjvc22]: Mantienen su orden solo que
agarras por bloques de 3 a los 12 elementos del vector.
@unvech(v) ‘ Crea una matriz sym con el triángulo inferior lleno usando los elementos desapilados del vector v.
El sym se dimensionará automáticamente. EViews informará una discrepancia de tamaño si la cantidad de
elementos de v no corresponde a un tamaño de matriz sym válido (no es un número triangular).
Tenga en cuenta que @unvech es el inverso de la función @vech.
EJM: vector v1=@mnrnd(15) ‘Creas un vector con 15 elementos con uniform random numbers
sym s1=@unvech(v1) ‘Lo desapilas dentro de un sym “s1” de 5x5

@vcat(m1,m2) ‘ @vcat realiza la concatenación vertical de dos objetos de matriz. m1 y m2 deben tener el mismo número de
columnas. Si m1 es una matriz con m filas y k columnas, y m2 es una matriz con n filas y k columnas, entonces
@vcat devolverá una matriz con (m + n) filas y k columnas.

@vec(o) ‘ Devuelve un vector. Donde “o” es una matriz/sym.


Crea un vector de las columnas de la matriz dada apiladas una sobre la otra. El vector tendrá la misma cantidad
de elementos que la matriz de origen.
EJM: matrix m1=@mrnd(10,3) ‘ m1 es de 10x3
vector v1=@vec(m1) ‘ v1 será de 30 elementos.

@vech(o) ‘Devuelve un vector. Donde “o” es una matriz o sym.


Crea un vector a partir de las columnas del triángulo inferior de la matriz cuadrada fuente o apiladas una
sobre otra. El vector tiene la misma cantidad de elementos que la matriz fuente en su triángulo inferior.
EJM: sym s1=@mrnd(5,5) ‘ creas una matriz de 5x5
vector v1=@vech(m1) ‘ Como el triangulo inferior tiene 15 elementos, también los tendrá “v1”.

Вам также может понравиться