Una tarea fundamental a la hora de abordar cualquier investigación aplicada es la recogida y depuración de datos. Adicionalmente, toda investigación económica implica trabajar con datos que proceden de situaciones reales y, por tanto, no controladas, lo que conlleva determinadas limitaciones a las que el investigador no debe ser insensible. Además, tampoco debe ser ajeno a los métodos de obtención y tratamiento de dichas magnitudes.
Antes de formular un modelo econométrico que intente explicar la realidad objeto de estudio, se debe realizar un análisis preliminar de las variables que se van a utilizar en la investigación, ya que dicho análisis puede arrojar luz sobre el comportamiento de esas variables y de las relaciones que pueda haber entre ellas.
Este capítulo tiene una doble finalidad, por una parte, familiarizar al usuario con el manejo de datos estadísticos mediante el programa Gretl y, por otra, examinar algunos instrumentos útiles para realizar un análisis preliminar de dichos datos.
La primera tarea con la que se debe enfrentar el usuario es la introducción de los datos de las variables seleccionadas para la investigación. Estos datos pueden estar disponibles en soporte papel o en soporte informático.
Cuando los datos estén en papel será necesaria su introducción tecleándolos, directamente utilizando el teclado o a través de la Consola Gretl. Si por el contrario, la información está almacenada en ficheros o en "bases de datos", dicha tarea se simplifica notablemente, pues basta con cargarlos.
La introducción directa de datos a través del teclado se puede realizar desde el Menú Principal, seleccionando Archivo à Nuevo conjunto de datos o utilizando el teclado (Ctrl+N).
Por ambas vías se abre el cuadro de diálogo “crear conjunto de datos”, en el que se debe introducir el número de observaciones de las variables (dimensión de la base de datos). En el ejemplo de la Ilustración 2‑1 se ha optado por un tamaño “10”.
Definida la dimensión de la base de datos, se hace clic en “Aceptar” y se abre el cuadro de diálogo “Organizador de estructura de datos”, donde se debe elegir la estructura del conjunto de datos. Debe de tenerse en cuenta que dicha elección determina los procedimientos o tareas que se pueden llevar a cabo 1.
Como puede verse en la Ilustración 2‑2, la información requerida por Gretl es diferente dependiendo de la estructura de datos elegida:
Una vez realizadas las elecciones oportunas, en el cuadro de diálogo “Organizador de la estructura de datos” se debe confirmar la estructura del conjunto de datos, ya que Gretl informa de la estructura seleccionada y pide confirmación. Si se ha cometido algún error al efectuar dicha elección, existe la posibilidad de ir hacia atrás y corregirlo antes de continuar. No obstante, a través del Menú Principal, seleccionando Datos à Estructura del conjunto de datos, Gretl permite acceder en cualquier momento al cuadro de diálogo “Organizador de la estructura del conjunto datos” para modificar dicha estructura.
Cuando se confirma la estructura de la base de datos Gretl vuelve a la Ventana Principal del programa e informa:
Generada la estructura de la base de datos se deben introducir los nombres y los datos de las variables que formarán parte de la misma.
Existen varias formas de acceder a la Ventana “editar datos”:
A cada una de las variables de la base de datos se le debe asignar un nombre, que será una combinación de letras y números no superior a treintaiún caracteres y que necesariamente comience con una letra 2.
Una vez que se ha dado nombre a la variable y se hace clic en el botón “Aceptar” del cuadro de diálogo “añadir variable”, se accede a la ventana “editar datos” (veáse Ilustración 2‑3). Para la introducción de datos se debe situar el cursor en la celda correspondiente, teclear el valor de la variable para esa observación, situar el cursor en la celda siguiente y proceder de la misma forma hasta completar el valor para la última observación de la variable. Para moverse por las celdas se pueden utilizar las flechas “arriba” y “abajo” del teclado.
Una vez introducidos los datos de la variable, es conveniente hacer un chequeo de los mismos para comprobar que se han introducido correctamente. En el caso de que se detecte algún error, este se corrigirá situando el cursor en la celda correspondiente, borrando el dato erróneo y tecleando el correcto.
Una vez se han introducido los datos, es necesario utilizar el botón “Aplicar” de la ventana “editar datos”, para que los cambios sean efectivos. No obstante, si en el momento de cerrar la ventana “editar datos”, los cambios no estuviesen guardados, Gretl preguntará al usuario si desea guardarlos.
El usuario puede editar las variables de una en una o hacerlo de forma conjunta (todas las variables). Además, a través del botón Añadir de esta ventana se pueden añadir nuevas variables (véase Ilustración 2‑4).
Otra opción para introducir datos es utilizar la Consola Gretl y/o los ficheros de comandos, para lo cual el usuario debe conocer los comandos, su formato de escritura y las opciones disponibles.
Antes de introducir los datos es necesario determinar la dimensión de la base de datos, para lo cual se utiliza el comando nulldata, cuyo su formato es:
nulldata número de observaciones
El siguiente paso es definir la estructura de los datos, es decir, determinar si se trata de datos atemporales, temporales o mixtos:
# Definir una base de datos con 10 observaciones
? nulldata 10
periodicidad: 1, máx.obs: 10
rango de observaciones: 1-10
? print index --byobs
index
1 1
2 2
3 3
4 4
5 5
6 6
7 7
8 8
9 9
10 10
# Para generar series atemporales es suficiente con definir la dimensión de la base de datos.
setobs frecuencia fecha inicial --time-series
En las siguientes tablas se recogen algunos ejemplos de bases de datos temporales generadas utilizando comandos ejecutados desde la Consola Gretl y/o desde un fichero o guión de comandos:
# Definir una serie temporal de datos anuales que empiece en el año 2001
? setobs 1 2001 --time-series
Rango de datos completo: 2001 - 2010 (n = 10)
? print index --byobs
index
2001 1
2002 2
2003 3
2004 4
2005 5
2006 6
2007 7
2008 8
2009 9
2010 10
# Para generar series anuales se debe especificar una frecuencia igual a “1” seguida del primer año de la serie (en este caso año 2001). Utilizando un comando print se puede observar a que año corresponde cada observación (por ejemplo, la quinta observación corresponde al año 2005).
# Definir una base de datos con 10 observaciones
? nulldata 10
periodicidad: 1, máx.obs: 10
rango de observaciones: 1-10
# Definir una serie temporal de datos trimestrales que empiece en el primer trimestre del año 2001
? setobs 4 2001:1 --time-series
Rango de datos completo: 2001:1 - 2003:2 (n = 10)
? print index --byobs
index
2001:1 1
2001:2 2
2001:3 3
2001:4 4
2002:1 5
2002:2 6
2002:3 7
2002:4 8
2003:1 9
2003:2 10
# Para generar series trimestrales se debe especificar una frecuencia igual a “4” seguida del primer trimestre de la serie año:nº, donde nº varia desde 1 (primer trimestre) hasta 4 (cuarto trimestre).
Utilizando un comando print se puede observar que el primer dato de la serie hace referencia al primer trimestre de 2001 y el último al segundo trimestre de 2003.
# Definir una base de datos con 10 observaciones
? nulldata 10
periodicidad: 1, máx.obs: 10
rango de observaciones: 1-10
# Definir una serie temporal de datos mensuales que empiece en el mes de enero del año 2001
? setobs 12 2001:01 --time-series
Rango de datos completo: 2001:01 - 2001:10 (n = 10)
? print index --byobs
index
2001:01 1
2001:02 2
2001:03 3
2001:04 4
2001:05 5
2001:06 6
2001:07 7
2001:08 8
2001:09 9
2001:10 10
# Para generar series mensuales se debe especificar una frecuencia igual a “12” seguida del primer mes de la serie año:nº, donde nº varia desde 01 (enero) hasta 12 (diciembre). Utilizando un comando print se puede observar que el primer dato de la serie hace referencia al mes de enero de 2001 y el último al mes de octubre de 2001.
# Definir una base de datos con 10 observaciones
? nulldata 10
periodicidad: 1, máx.obs: 10
rango de observaciones: 1-10
# Definir una serie temporal de datos semanales que empiece en la primera semana del año 2011
? setobs 52 2011/01/03 --time-series
Rango de datos completo: 2011/01/03 - 2011/03/07 (n = 10)
? print index --byobs
index
2011/01/03 1
2011/01/10 2
2011/01/17 3
2011/01/24 4
2011/01/31 5
2011/02/07 6
2011/02/14 7
2011/02/21 8
2011/02/28 9
2011/03/07 10
# Para generar series semanales se debe especificar una frecuencia igual a “52” seguida de la fecha del lunes de la primera semana de la serie año/n1º/n2º, donde n1º indica el mes y n2º la fecha correspondiente del lunes de dicha semana. Utilizando un comando print se puede observar que el primer dato de la serie hace referencia al primer lunes del mes de enero de 2011 (3/1/2011) y el último al primer lunes del mes de marzo de 2011 (7/3/2011).
# Definir una base de datos con 10 observaciones
? nulldata 10
periodicidad: 1, máx.obs: 10
rango de observaciones: 1-10
# Definir una serie temporal de datos diarios de una “semana de 5 días” (de lunes a viernes) que empiece en la primera semana del año 2011
? setobs 5 2011/01/03 --time-series
Rango de datos completo: 2011/01/03 - 2011/01/14 (n = 10)
? print index --byobs
index
2011/01/03 1
2011/01/04 2
2011/01/05 3
2011/01/06 4
2011/01/07 5
2011/01/10 6
2011/01/11 7
2011/01/12 8
2011/01/13 9
2011/01/14 10
# Para generar series diarias de semanas de cinco días se debe especificar una frecuencia igual a “5” seguida de la fecha del lunes de la primera semana de la serie año/n1º/n2º, donde n1º indica el mes y n2º la fecha correspondiente a ese día de la semana. Utilizando un comando print se puede observar que, en este caso, no aparecen en la serie las fechas correspondientes a los sábados y domingos.
setobs número de unidades temporales n1º.n2º --stacked-time-series
# Definir un panel de datos que contenga 2 unidades de períodos temporales apilados y que empiece en la primera observación del primer panel.
? setobs 2 1.1 --stacked-time-series
Rango de datos completo: 1:1 - 5:2 (n = 10)
? print index --byobs
index
1:1 1
1:2 2
2:1 3
2:2 4
3:1 5
3:2 6
4:1 7
4:2 8
5:1 9
5:2 10
setobs número de unidades de sección cruzada n1º.n2º --stacked cross-section
# Definir un panel de datos que contenga 2 unidades de sección cruzada apiladas y que empiece en la primera observación del primer panel.
? setobs 2 1.1 --stacked-cross-section
Rango de datos completo: 1:1 - 2:5 (n = 10)
? print index --byobs
index
1:1 1
1:2 3
1:3 5
1:4 7
1:5 9
2:1 2
2:2 4
2:3 6
2:4 8
2:5 10
Una vez definida la estructura de datos, se puede utilizar el comando series para introducir datos a través de la Consola Gretl y/o fichero o guión de comandos, cuyo formato es:
series nombre de la variable = {d1, d2, …, dT}
donde di son los valores numéricos que toma la variable a lo largo del rango muestral.
# Definir series
? series C = {11, 11, 10, 9, 8, 11, 12, 10, 9, 12}
Se ha generado la serie C (ID 2)
? series P = {2.46, 2.51, 2.73, 2.73, 2.63, 2.38, 2.44, 2.75, 2.98, 1.95}
Se ha generado la serie P (ID 3)
? series RF = {1079.5, 1108.2, 1116.8, 978.09, 809.62, 1047.1, 1164.3, 1069.6, 1040.3, 1067.8}
Se ha generado la serie RF (ID 4)
? print C P RF --byobs
C P RF
1 11 2.46 1079.50
2 11 2.51 1108.20
3 10 2.73 1116.80
4 9 2.73 978.09
5 8 2.63 809.62
6 11 2.38 1047.10
7 12 2.44 1164.30
8 10 2.75 1069.60
9 9 2.98 1040.30
10 12 1.95 1067.80
Introducidos los datos de las variables, es necesario guardarlos en un fichero para poder trabajar con ellos en sesiones posteriores, puesto que si esto no se hace, el usuario se verá obligado a introducir de nuevo dichos datos. Mientras no se guarden los datos, una de las informaciones que Gretl muestra en su Ventana Principal es “datos no guardados” (veáse parte inferior de la Ilustración 2‑4).
Existen varias alternativas para guardar datos en un fichero:
Existen varias alternativas para guardar datos utilizando el menú Archivo:
En el ejemplo recogido en la Ilustración 2‑5, los datos se guardan en el fichero “datos1.gdt” situado en la carpeta “proyecto01”, que es la que se ha configurado en el capítulo anterior como directorio de trabajo. El usuario debe tener en cuenta que aunque no indique la extensión “.gdt”, es la que Gretl atribuye por defecto a los ficheros de datos.
La diferencia entre utilizar la opción “Guardar datos” y la opción “Guardar datos como” para un fichero existente, es que la primera “guarda” el archivo en la misma ubicación y con el mismo nombre, reemplazandolo automáticamente, mientras que la segunda permite almacenarlo con un nombre distinto y/o en una ubicación diferente si se desea.
Las opciones vistas hasta el momento permiten guardar los datos en formatos directamente reconocibles por el programa, pero hay que señalar que Gretl también permite guardarlos en otros formatos con la opción Exportar datos del menú Archivo (csv, Gnu Octave, Gnu R, …), lo que facilita el intercambio con otros paquetes de software.
Además, se puede utilizar la opción Exportar datos para seleccionar las variables a guardar, es decir, no se tienen que guardar forzosamente todas las variables disponibles en ese momento en la sesión de trabajo.
El formato del comando store es:
store nombre del fichero.extensión v1 v2 … vk --opciones
En el Cuadro 2‑1 se recogen algunas de las opciones disponibles con el comando store.
Cuadro 2‑1. Algunas opciones del comando store.
Por ejemplo, para guardar las variables “index, C, P y RF” en un fichero de datos de Gretl denominado dconsumo.gdt, se tendrá que ejecutar el comando:
Obsérvese que después de ejecutar el comando store, Gretl informa de que los datos se han guardado y señala la ruta o path de la carpeta donde se han guardado (la que se ha elegido por defecto como directorio de trabajo). Si se desea guardar el fichero en una carpeta diferente será necesario especificar el path o ruta de acceso a dicha carpeta:
La recuperación de datos desde ficheros o bases de datos es una tarea relativamente sencilla. Aunque son muchos los tipos de ficheros 3 de los que Gretl permite leer o importar datos, este capítulo se centrará únicamente en los ficheros de datos del propio programa (*.gdt) y los ficheros de Excel (*.xls).
Existen varias alternativas para recuperar datos desde un fichero de datos de Gretl:
Para recuperar datos desde un fichero de datos de Gretl, el usuario puede seguir los siguientes pasos (véase parte superior de la Ilustración 2‑6):
Los datos se cargan de forma automática en la sesión de trabajo y se puede ver su descripción en la Ventana Principal del programa (véase parte inferior de la Ilustración 2‑6). Tal como puede observarse en el segundo recuadro, por defecto, Gretl busca el fichero de datos en el directorio de trabajo (en este caso proyecto01), por lo que si dicho fichero se encontrara en una ubicación distinta, sería necesario especificarla de alguna de las siguientes formas:
El formato del comando open es:
open nombre del fichero.gdt
Por ejemplo, para recuperar los datos del fichero “dconsumo.gdt” se tendrá que ejecutar el comando:
Listando 5 variables:
0) const 1) index 2) C 3) P 4) RF
Obsérvese que después de ejecutar el comando open, Gretl informa de la ruta o path de la carpeta desde donde se han recuperado los datos, de su periodicidad, del número máximo de observaciones, del rango muestral y de los nombres de las variables recuperadas (además de las variables “const” e “index”que se generan automáticamente).
Si se desea recuperar un fichero de una carpeta diferente será necesario indicar el path o ruta de acceso en el comando. Por ejemplo, para recuperar los datos del fichero “dconsumo.gdt”, ubicado en la carpeta “proyecto02”, se tendrá que ejecutar el comando:
Listando 5 variables:
0) const 1) index 2) C 3) P 4) RF
Existen varias alternativas para recuperar datos desde un fichero de Excel:
Para recuperar datos desde un fichero de Excel, el usuario puede seguir los siguientes pasos (véase Ilustración 2‑7):
Antes de pinchar Aceptar, es conveniente indicar la columna y la fila en la que se empezará a importar los datos ya que, por defecto, Gretl empezará en la primera columna y fila.
El usuario debe tener en cuenta que Gretl:
Por defecto, Gretl interpreta los datos importados como de corte transversal (véase el último cuadro de diálogo de la Ilustración 2‑7). Para establecer una estructura diferente (panel de datos o series temporales) basta con seleccionar el botón “Si” de este cuadro de diálogo.
Tal como pueder observarse en el segundo recuadro que aparece en la Ilustración 2‑7, por defecto, Gretl busca el fichero de datos en el directorio de trabajo (en este caso proyecto01), por lo que si se encontrara en una ubicación distinta, sería necesario especificarla de alguna de las siguientes formas:
El formato del comando open es:
open nombre del fichero.xls --sheet=nº
Para una correcta importación de datos, es necesario ejecutar el comando open con la opción en la que se especifique la hoja del fichero en la que se encuentran los datos, puesto que en caso contrario se importarán de la primera hoja del fichero.
Por ejemplo, si se quieren recuperar los datos de la segunda hoja del fichero “Datos.xls”, se tendrá que ejecutar el comando:
? store datos2.gdt
store: usando nombre de fichero c:\proyecto01\datos2.gdt
Los datos se han escrito correctamente.
Obsérvese,que después de ejecutar el comando open, Gretl informa del listado de variables que ha importado 6.
Si se desea recuperar un fichero de una carpeta diferente es necesario especificar su path o ruta de acceso en dicho comando. Por ejemplo, si se quieren recuperar los datos de la segunda hoja del fichero “Datos.xls” ubicado en la carpeta “proyecto02”, se tendrá que ejecutar el comando:
El usuario debe tener en cuenta que cada vez que se abra un fichero de datos, se cerrará automáticamente el fichero de datos con el que se esté trabajando y se perderán los resultados que no se hayan guardado. Por tanto, si el usuario no desea que los nuevos datos sustituyan a los existentes, sino anexarlos a la sesión de trabajo, debe proceder a añadirlos de alguna de las siguientes formas:
El formato del comando append es:
append path\ nombre del fichero.gdt
Listando 5 variables:
0) const 1) index 2) y 3) x1 4) x2
? open c:\proyecto01\dconsumo.gdt
Leer fichero de datos c:\proyecto01\dconsumo.gdt
periodicidad: 1, máx.obs: 10
rango de observaciones: 1-10
Listando 5 variables:
0) const 1) index 2) C 3) P 4) RF
En el ejemplo anterior los datos de las variables del fichero dconsumo.gdt sustituyen a las del fichero datos1.gdt.
Listando 5 variables:
0) const 1) index 2) y 3) x1 4) x2
? append c:\proyecto01\dconsumo.gdt
Leer fichero de datos c:\proyecto01\dconsumo.gdt
periodicidad: 1, máx.obs: 10
rango de observaciones: 1-10
Los datos se han añadido correctamente
Listando 8 variables:
0) const 1) index 2) y 3) x1 4) x2
5) C 6) P 7) RF
En el ejemplo anterior los datos de las variables del fichero dconsumo.gdt se añaden a las del fichero datos1.gdt.
2 En Econometría es frecuente nombrar a la variable dependiente con la letra Y y a la variable independiente con la letra X (en el caso, de que haya más de una variable dependiente o independiente, se les asignan subíndices numéricos para distinguirlas). Estas denominaciones aunque son ampliamente utilizadas, no aportan información descriptiva de las variables, por lo que un enfoque más eficiente sería asignar a cada variable un nombre que describa el tipo de datos que contiene.
3 Gretl permite importar datos de ficheros de datos de Excel, texto (csv), SAS, STATA y SPSS, entre otros.
4 Un fichero de Excel puede tener múltiples hojas, por lo que será necesario especificar la hoja donde se encuentran los datos que se desean cargar.
5 En el caso de que el fichero de Excel contenga sólo datos numéricos, Gretl denominará a las variables v1, v2, ….
6 Una vez cargados los datos, puede resultar conveniente guardarlos en un fichero de datos de Gretl.