R: Práctica de Análisis de Regresión con Dos Variables

Análisis de Regresión con Dos Variables

A continuación encontrarán el script que se ha desarrollado durante las clases de Econometría 1 para el tema de Análisis de Regresión con Dos Variables. Puede copiar y pegar este script en un editor de R para correr las instrucciones junto a las notas de clases.

#----Econometría 1 - Prof. Anthonny Arias----#

#--Limpiamos nuestro espacio de trabajo--#

rm(); rm(list=ls())
cat("\014")

# Definimos la variable escolaridad y su media.
# Para esto, usamos la instrucción c() para definir vector.
# Y usamos la instrucción mean() para definir la media.

escolaridad <- c(6,7,8,9,10,11,12,13,14,15,16,17,18)
m.escolaridad <- mean(escolaridad)

# Definimos la variable salario y su media.

salario <- c(4.4567,5.77,5.9787,7.3317,7.3182,6.5844,7.8182,7.8351,11.0223,10.6738,10.8361,13.615,13.531)
m.salario <- mean(salario)

# Hacemos un gráfico de dispersión de estas dos variables.

plot(escolaridad,salario)

# Una vez obtenidos estos valores, podemos calcular los estimadores beta1 y beta2.

beta2 <- sum( (escolaridad-m.escolaridad)*(salario-m.salario) )/sum( (escolaridad-m.escolaridad)^2 )
beta2

beta1 <- m.salario - beta2*m.escolaridad
beta1

# Calculamos los valores estimados del salario.

salario.e <- beta1 + beta2*escolaridad
salario.e

# Calculamos los residuos.

residuos <- salario - salario.e
residuos

# Calculamos la var.e.

var.e <- sum( (residuos)^2 )/(length(salario)-2)

var.e
# Caculamos el error estándar, aplicando la raíz cuadrada a la var.e.

error.s <- sqrt(var.e)
error.s

# Calculamos la var.e de beta2

v.beta2 <- var.e/sum( (escolaridad-m.escolaridad)^2 )
v.beta2

# Calculamos el error estándar de beta2

es.beta2 <- sqrt(v.beta2)
es.beta2

# Para calcular el intervalo de confianza de beta2, consideramos t=1.7959

li.beta2 <- beta2 - qt(0.975,df=length(escolaridad)-2)*es.beta2
li.beta2

ls.beta2 <- beta2 + qt(0.975,df=length(escolaridad)-2)*es.beta2
ls.beta2

# Calculamos la var.e de beta1.

v.beta1 <- var.e*sum( escolaridad^2 )/(length(escolaridad) * sum( (escolaridad-m.escolaridad)^2 ))
v.beta1

# Calculamos el error estándar de beta1

es.beta1 <- sqrt(v.beta1)
es.beta1

# Para calcular el intervalo de confianza de beta1, consideramos t=1.7959

li.beta1 <- beta1 - qt(0.975,df=length(escolaridad)-2)*es.beta1
li.beta1

ls.beta1 <- beta1 + qt(0.975,df=length(escolaridad)-2)*es.beta1
ls.beta1

# Para hacer la prueba de hipótesis bilateral, determinamos el t-calculado.
t.c <- (beta2-0.70)/es.beta2
t.c # Como t.c está fuera del intervalo (-2.201,2.201) entonces rechazamos la hipótesis nula.
qt(0.025,df=length(escolaridad)-2)
qt(0.975,df=length(escolaridad)-2)


# Para hacer la prueba de hipótesis unilateral, determinamos el t-calculado.
t.c <- (beta2-0.50)/es.beta2
t.c # Como t.c está fuera del intervalo (-2.201,2.201) entonces rechazamos la hipótesis nula.
qt(0.95,df=length(escolaridad)-2)

# Calculamos ahora, el intervalo de confianza para chi-cuadrado
li.var.e <- (length(escolaridad)-2)*var.e/qchisq(0.975,df=11)
li.var.e

ls.var.e <- (length(escolaridad)-2)*var.e/qchisq(0.025,df=11)
ls.var.e

# Como la hipótesis nula indica que la varianza es igual a 0.6, entonces no rechazamos esta hipótesis.

# Podemos también llevar a cabo esta prueba con el estadístico chi-cuadrado. Para esto, calculamos el estadístico chi-cuadrado.

chi.c <- (length(escolaridad)-2)*var.e/0.6
chi.c

li.chi <- qchisq(0.025,df=df=length(escolaridad)-2)
li.chi
ls.chi <- qchisq(0.975,df=df=length(escolaridad)-2)
ls.chi

# Éste está dentro del intervalo [ qchisq(0.025,df=df=length(escolaridad)-2) ; qchisq(0.025,df=df=length(escolaridad)-2) ], por lo tanto, no se rechaza H0.

# Calculamos la suma de los cuadrados explicada.

SCE.escolaridad <- beta2^2*sum( (escolaridad-m.escolaridad)^2 )
SCP.escolaridad <- SCE.escolaridad/1
SCP.escolaridad

# Calculamos la suma de los cuadrados de los residuos.

SCR.residuos <- sum(residuos^2)
SCP.residuos <- SCR.residuos/(length(escolaridad)-2)
SCP.residuos

# Calculamos la suma de los cuadrados totales.

SCT.salarios <- sum( (salario-m.salario)^2 )
SCP.salarios <- SCT.salarios/(length(salario)-1)
SCP.salarios

# Calculamos ahora el valor F (F calculado).

F.c <- SCP.escolaridad/SCP.residuos
F.c

# Calculamos el p-value (valor-p) para este F calculado.

pf(F.c,1,length(escolaridad)-2,lower.tail = F)

# Verificamos que se cumple el teorema

t.c <- (beta2-0)/es.beta2
t.c
t.c^2
F.c

# Predicción de la Media

escolaridad.0 <- 20
salario.0 <- beta1 + beta2*escolaridad.0
salario.0

# Calculamos la varianza de la predicción.

varm.salario.0 <- var.e*(1/length(escolaridad)+(escolaridad.0-m.escolaridad)^2/sum((escolaridad-m.escolaridad)^2))
varm.salario.0

# Calculamos ahora el error estándar.

eem.salario.0<- sqrt(varm.salario.0)
eem.salario.0

# Calculamos el intervalo de confianza para salario.0

li.salario.0 <- beta1 + beta2*escolaridad.0 - qt(0.025,df=length(escolaridad)-2,lower.tail = FALSE)*eem.salario.0
li.salario.0

ls.salario.0 <- beta1 + beta2*escolaridad.0 + qt(0.025,df=length(escolaridad)-2,lower.tail = FALSE)*eem.salario.0
ls.salario.0

# Predicción Individual

# Calculamos la varianza de la predicción.

vari.salario.0 <- var.e*(1+1/length(escolaridad)+(escolaridad.0-m.escolaridad)^2/sum((escolaridad-m.escolaridad)^2))
vari.salario.0

# Calculamos ahora el error estándar.

eei.salario.0<- sqrt(vari.salario.0)
eei.salario.0

# Calculamos el intervalo de confianza para salario.0

li.salario.0 <- beta1 + beta2*escolaridad.0 - qt(0.025,df=length(escolaridad)-2,lower.tail = FALSE)*eei.salario.0
li.salario.0

ls.salario.0 <- beta1 + beta2*escolaridad.0 + qt(0.025,df=length(escolaridad)-2,lower.tail = FALSE)*eei.salario.0
ls.salario.0

#----Análisis de Residuos----#

#--Análisis de Correlación--#

# Gráfico de dispersión para los residuos.

plot(residuos)

# Hacemos la gráfica de la función de autocorrelación.
# Si todaslas barras están por debajo de las líneas azules, esto indica que no hay autocorrelación.
# https://www.reddit.com/r/AskStatistics/comments/5kiix2/interpret_acfpacf_dataplots_in_r/

acf(residuos)

# Hacemos la prueba de Durbin–Watson, que establece como hipótesis nula que el coeficiente de correlación es igual a cero.
# El estadístico de Durbin–Watson igual a dos indica que no hay autocorrelación.
# https://en.wikipedia.org/wiki/Durbin%E2%80%93Watson_statistic

library("lmtest")
dwtest(salario ~ escolaridad)

#--Pruebas de Normalidad--#

# Generamos el histograma de los residuos.

hist(residuos)

plot(density(residuos))

# Gráfica de probabilidad normal

qqnorm(residuos, pch = 1, frame = TRUE)
qqline(residuos, col = "steelblue", lwd = 2)

# También se puede llevar a cabo usando el siguiente comando
library("car")
qqPlot(residuos,col.lines="steelblue")

# Prueba de Anderson-Darling.

library(nortest)
ad.test(residuos)

# Prueba de normalidad de Jarque-Bera (JB)
# https://lancebachmeier.com/computing/j-b-test.html
# Esta plantea como hipótesis nula el coeficiente de asimetría igual cero y la curtosis igual a tres.

library(tseries)
jarque.bera.test(residuos)

# Prueba de normalidad de Shapiro-Wilk
# https://stat.ethz.ch/R-manual/R-devel/library/stats/html/shapiro.test.html
# Esta prueba plantea como hipótesis nula que los datos están normalmente distribuídos.

shapiro.test(residuos)
Anuncio publicitario

R, instrucciones básicas.

R provee un lenguaje de programación para que sus usuarios puedan crear de la nada scripts para llevar a cabo tareas titánicas, es por esto que nos debemos familiarizar con algunos de los elementos más básicos de sus instrucciones y la sintaxis correspondiente.

Anuncios

Consideremos un pequeño conjunto de datos, particularmente, los datos que se encuentran en la Tabla 3.2 del libro de Econometría de Damodar N. Gujarati and Dawn Porter en su quinta edición. Este conjunto de datos proporciona los datos primarios que se necesitan para estimar el efecto cuantitativo de la escolaridad en los salarios:

ObservaciónSalarioEscolaridad
14.45676
25.777
35.97878
47.33179
57.318210
66.584411
77.818212
87.835113
911.022314
1010.673815
1110.836116
1213.61517
1313.53118
Tabla 3.2

Vectores

Si queremos trabajar con este conjunto de datos, es necesario almacenarlos en la memoria de nuestro espacio de trabajo y la forma más básica para hacer esto es usando vectores. Los vectores son la estructura de datos más simple en R y representan una secuencia de elementos del mismo tipo (de acuerdo con la web datasicience+).

Si queremos definir un vector a partir de una variable x que cuenta con n observaciones, la sintaxis correspondiente es

c(x_1,x_2,...,x_n)

En nuestro caso, debemos definir un vectores que alberguen datos numéricos, y considerando nuestro conjunto de datos:

Para definir una variable llamada obs que albergue la información del vector que consisten en los elementos de la variable Observación, escribimos lo siguiente:

obs <- c(1,2,3,4,5,6,7,8,9,10,11,12,13)

Para definir una variable llamada salario que albergue la información del vector que consisten en los elementos de la variable Salario, escribimos lo siguiente:

salario <- c(4.4567,5.77,5.9787,7.3317,7.3182,6.5844,7.8182,7.8351,11.0223,10.6738,10.8361,13.615,13.531)

Para definir una variable llamada escolaridad que albergue la información del vector que consisten en los elementos de la variable Escolaridad, escribimos lo siguiente:

escolaridad <- c(6,7,8,9,10,11,12,13,14,15,16,17,18)
Anuncios

Instrucciones

Llevar a cabo ciertos cálculos resulta tedioso cuando la cantidad de elementos involucrados es muy grande, afortunadamente, podemos indicarle a R que haga estos cálculos por nosotros a través de las instrucciones (también llamadas comandos, como un anglicismo de la palabra commands).

La suma de los elementos de un vector

Una vez que hemos definido variables a partir de vectores, podemos dar nuestros primeros pasos para trabajar con con los datos de nuestra tabla. Empecemos con algo básico como calcular la suma de los elementos de un vector, que pudiéramos calcularla sumando cada uno de los elementos usando las operaciones básicas de R.

Sin embargo, R provee una instrucción que permite efectuar la suma de todos los elementos de un vector. Entonces, si x es una variable definida por un vector que alberga valores numéricos, la sintaxis correspondiente es

sum(x)

Considerando las variables salario y escolaridad que hemos definido anteriormente, podemos calcular la suma de las observaciones de cada variable usando, de forma respectiva, las siguientes instrucciones

sum(salario)
sum(escolaridad)

Al ejecutar estas instrucciones, aparecerá de forma inmediata la siguiente información en la consola:

> sum(salario)
[1] 112.7712
> sum(escolaridad)
[1] 156
Anuncios

La longitud de un vector

Al hacer estudios estadísticos siempre es importante determinar la cantidad de observaciones con las que se cuentan y la instrucción que nos permite determinar esta cantidad es conocida como la longitud del vector que alberga la información. Entonces, si x es una variable definida por un vector que alberga valores numéricos, la sintaxis correspondiente es

length(x)

Considerando las variables salario y escolaridad que hemos definido anteriormente, podemos calcular la cantidad de observaciones de cada variable usando, de forma respectiva, las siguientes instrucciones

length(salario)
length(escolaridad)

Al ejecutar estas instrucciones, aparecerá de forma inmediata la siguiente información en la consola:

> length(salario)
[1] 13
> length(escolaridad)
[1] 13
Anuncios

La media

La media de una variable sienta la base para la estadística descriptiva y de ahí radica la importancia de aprender a calcularla. Esta se calcula con el cociente de la suma de todas las observaciones entre la cantidad de observaciones, de forma que si tenemos una variable x que cuenta con n observaciones x_1, x_2, \ldots, x_n, la media se calcula usando la siguiente fórmula:

\dfrac{x_1 + x_2 + \ldots + x_n}{n}

Por lo tanto, podemos combinar las instrucciones de suma y longitud de un vector para calcular la media. Entonces, si x es una variable definida por un vector que alberga valores numéricos, la sintaxis correspondiente es

sum(x)/length(x)

Muy bien, de esta forma podemos calcular la media de una variable, pero debido al extenso uso de la media para los cálculos estadísticos, R provee una instrucción específica para calcularla y la sintaxis correspondiente es:

mean(x)

Considerando las variables salario y escolaridad que hemos definido anteriormente, podemos calcular la media de cada variable usando, de forma respectiva, las siguientes instrucciones

mean(salario)
mean(escolaridad)

Al ejecutar estas instrucciones, aparecerá de forma inmediata la siguiente información en la consola:

> mean(salario)
[1] 8.674708
> mean(escolaridad)
[1] 12
Anuncios

La varianza

La varianza de una variable representa información vital la estadística descriptiva, por lo que también es importante de aprender a calcularla. Esta se calcula con el cociente de la suma de todos cuadrados de las diferencias de las observaciones con la media, entre la cantidad de observaciones, de forma que si tenemos una variable x que cuenta con n observaciones x_1, x_2, \ldots, x_n y media \overline{x}, la varianza se calcula usando la siguiente fórmula:

\dfrac{ (x_1 - \overline{x})^2 + (x_2 - \overline{x})^2 + \ldots + (x_n -  \overline{x})^2}{n}

Y si bien, podemos combinar las instrucciones anteriormente descritas para hacer este cálculo, este proceso puede resultar engorroso. Afortunadamente, R provee una instrucción específica para calcularla; si x es una variable definida por un vector que alberga valores numéricos, la sintaxis correspondiente es

var(x)

Considerando las variables salario y escolaridad que hemos definido anteriormente, podemos calcular la varianza de cada variable usando, de forma respectiva, las siguientes instrucciones

var(salario)
var(escolaridad)

Al ejecutar estas instrucciones, aparecerá de forma inmediata la siguiente información en la consola:

> var(salario)
[1] 8.759861
> var(escolaridad)
[1] 15.16667

R: paquetes, librerías e importación de datos

Si bien R provee un lenguaje de programación para que sus usuarios puedan crear de la nada scripts para llevar a cabo tareas titánicas, una de las más grandes fortalezas que tiene este programa es que permite incorporar conjuntos de scripts e instrucciones prediseñadas por usuarios, desarrolladores y programadores que nos ahorran este trabajo.

También pudiera interesarte

Anuncios

Paquetes y Librerías

Las librerías son conjuntos de instrucciones que albergan scripts que pueden ser ejecutados con instrucciones inherentes de la librería, en general, estas vienen contenidas dentro de paquetes que deben ser preinstalados para poder usarlas.

Para instalaciar un paquete debemos usar la instrucción install.packages y la sintaxis correspondiente es

install.packages(nombre_del_paquete)

El uso de una librería se conoce como importar la librería y para esto debemos usar la instrucción library, cuya sintaxis correspondiente es

library(nombre_de_la_librería)

Veamos a continuación como hacer uso de una librería para llevar a cabo una de las tareas básicas si queremos hacer cualquier tipo de estudio estadístico.

Importar datos

Al trabajar con conjuntos de datos, hemos visto que podemos definir vectores que alberguen la información que necesitamos, sin embargo, esta tarea tiene a ser tediosa si el conjunto de datos es muy grande, por esta razón, surge la necesidad de importar una librería que nos permita definir conjuntos de datos con facilidad.

Los conjuntos de datos se encuentran almacenados en archivos con distintas extensiones, las más comunes son:

  • .txt, archivos que contienen texto plano.
  • .csv, archivos que contienen valores separados por comas (comma separated values en inglés)
  • .xls o .xlsx, archivos que definen una hoja de cálculo, por ejemplo, Hojas de EXCEL.

El paquete de librerías sugerido por La red integral de archivos R para trabajar con ciencia de datos es Tidyverse, y esta contiene la librería readxl que nos permitirá importar datos contenidos en hoja de cálculo. Para instalar este paquete, la sintaxis correspondiente es

install.packages("tidyverse")

Escribiendo esta instrucción en la consola, esto es lo que debería aparecer en su pantalla

Presionamos ENTER para ejecutar esta instrucción y empezar el proceso de instalación. En su pantalla debería aparecer:

Entre descargar e instalar, el proceso debería demorar alrededor de diez minutos con una velocidad de conexión de 4mbps y una vez que finaliza, muestra una lista de las librerías que se han instalado con el paquete y el espacio de memoria donde se han instalado:

Aunque si la conexión a internet es lenta, en un principio también se puede instalar la librería readxl directamente sin necesidad de instalar todo el paquete de librerías, la sintaxis correspondiente es

install.packages("readxl")

De esta forma, podemos usar la librería readxl, la sintaxis correspondiente es

library(readxl)

Consideremos un pequeño conjunto de datos, particularmente, los datos que se encuentran en la Tabla 3.2 del libro de Econometría de Damodar N. Gujarati and Dawn Porter en su quinta edición. Este conjunto de datos proporciona los datos primarios que se necesitan para estimar el efecto cuantitativo de la escolaridad en los salarios:

ObservaciónSalarioEscolaridad
14.45676
25.777
35.97878
47.33179
57.318210
66.584411
77.818212
87.835113
911.022314
1010.673815
1110.836116
1213.61517
1313.53118
Tabla 3.2

El archivo table-3_2.xlsx contiene la información de la Tabla 3.2, descárguelo haciendo click en el siguiente enlace:

Haciendo click en las propiedades del archivo, podemos observar la dirección donde se encuentra, el nombre y la extensión de este:

En este caso, lo he guardado en mi escritorio, así que el nombre completo del archivo es el siguiente:

C:\Users\Antho\Desktop\Table 3_2.xlsx

Una vez que hemos importado la librería readxl y descargado el archivo que contiene los datos con los que vamos a trabajar, podemos importarlos usando la instrucción read_excel cuya sintaxis es la siguiente

read_excel("dirección/nombre.extensión")

Entonces, la sintaxis para importar el archivo Table 3_2.xlsx es la siguiente:

read_excel("C:/Users/Antho/Desktop/Table 3_2.xlsx")

Al ejecutar esta instrucción se importan lo datos de forma inmediata y en su pantalla debería aparecer:

Nota: para ejecutar la instrucción, se debe cambiar la barra diagonal inversa «\» por la barra diagonal «/», esto es para evitar conflictos de código en el programa. Aparecerá el siguiente error:

Al importar nuestros datos, podemos almacenarlos directamente dentro de una variable para poder hace referencia a ellos con mayor facilidad. Supongamos que usamos la variable datos para guardar la información de la Tabla 3.2, entonces, usamos la siguiente sintáxis:

datos <- read_excel("C:/Users/Antho/Desktop/Table 3_2.xlsx")

En su pantalla debería aparecer:

Habiendo definido una variable para nuestro conjuntos de datos, podemos trabajar con cada una de las variables incluidas en los datos y para esto usamos el carácter «$» usando la siguiente sintaxis:

datos$variable

Por ejemplo, si queremos hacer referencia a la variable Salario del conjunto de datos, entonces usamos la siguiente sintaxis:

datos$Salario

Ejecutando esta instrucción, podemos ver la información contenida en la variable Salario de nuestro conjunto de datos, en el caso de la Tabla 3.2, en la consola aparecerá lo siguiente:

> datos$Salario
 [1]  4.4567  5.7700  5.9787  7.3317  7.3182  6.5844  7.8182  7.8351 11.0223 10.6738
[11] 10.8361 13.6150 13.5310

En su pantalla debería aparecer:

Si queremos calcular la media de la variable Salario usamos la siguiente sintaxis:

mean(datos$Salario)

Ejecutando esta instrucción, podemos la media de la variable Salario de nuestro conjunto de datos, en el caso de la Tabla 3.2, en la consola aparecerá lo siguiente:

> mean(datos$Salario)
[1] 8.674708

En su pantalla debería aparecer:

Si queremos calcular la varianza de la variable Salario usamos la siguiente sintaxis:

var(datos$Salario)

Ejecutando esta instrucción, podemos la varianza de la variable Salario de nuestro conjunto de datos, en el caso de la Tabla 3.2, en la consola aparecerá lo siguiente:

> var(datos$Salario)
[1] 8.759861

En su pantalla debería aparecer:


RStudio

R, una interfaz alternativa: RStudio.

El uso de R provee muchas herramientas para el desarrollo de investigaciones que requieren cálculos de índole estadístico, una vez que lo hemos aprendido lo básico y procedemos a trabajar con problemas más complejos, surge la necesidad de recurrir a algunas herramientas que permitan acceder a algunas tareas comunes rápidamente o que nos permitan observar rápidamente el estado de las variables que hemos definido.

También pudiera interesarte

Anuncios

La interfaz gráfica que provee la instalación de R por defecto es útil para aprender a familiarizarse con el uso del programa, pero existen interfaces creadas por terceros que facilitan trabajar con R conocidas como entornos de desarrollo integrado (IDE por sus siglas en inglés). Una de las IDE más populares es RStudio por su agradable presentación y facilidad de uso, a continuación mostraremos como descargarlo e instalarlo.

Nota: RStudio es una interfaz gráfica para trabajar con R. En consecuencia, si no ha instalado R, no podrá usar RStudio.

Descargando RStudio

Lo primero que debemos hace es ingresar a la página web oficial de RStudio: https://www.rstudio.com/, evite descargar este programa de otra fuente que no sea la página oficial para evitar descargar virus que puedan dañar a su computadora.

Una vez que ingrese a la página, ubique el botón de descarga (Download):

Descargando RStudio | totumat.com

Entrando a la sección de descargas, podemos encontrar un poco más abajo de las opciones de descarga la versión de RStudio que necesitamos. Como somos usuarios nuevos de R usaremos la versión más básica que es la que versión gratuita.

Descargando RStudio | totumat.com

Haciendo click en el botón de descarga, se mostrará la versión de RStudio pertinente para su sistema operativo. En mi caso particular es RStudio Desktop 1.4.1106 (versión más reciente hasta el 17.04.2021). Seguidamente, hacemos click en el botón de descarga DOWNLOAD RSTUDIO FOR WINDOWS:

Descargando RStudio | totumat.com

Tome en consideración que el archivo pensará alrededor de 149 megabytes, con una velocidad de 4mbps debería demorar alrededor de 4 minutos descargando.

Al final de la descarga pudiera encontrar un mensaje de advertencia, indicado que este archivo pudiera dañar su computadora, esto se debe a que es un archivo con extensión .EXE, pero si usted ha seguido los pasos indicados en estas instrucciones, no se corren riesgos, así que podemos mantener el archivo sin problema alguno.

Anuncios

Instalando RStudio

Muy bien, ya hemos descargado R, así que procedemos con su instalación. Para esto, ubique el archivo que descargó, generalmente estará en la carpeta de descargas.

Instalando RStudio | totumat.com

Haga doble click sobre el archivo que descargó, en este caso es el archivo RStudio-1.4.1106.

A continuación se inicia el asistente de instalación, hacemos click en Next para iniciar el proceso.

Instalando RStudio | totumat.com

Seguidamente se le preguntará en qué carpeta desea instalar el programa y si su conocimiento sobre computadoras es básico, puede continuar con la carpeta que ya ha seleccionado el programa por defecto: C:\Program Files\RStudio. Aunque usted puede escoger cualquier otra locación, en mi caso particular, lo instalé en otra partición por cuestión espacio.

Instalando RStudio | totumat.com

Seguidamente se le preguntará cual menú de accesos directos desea y si su conocimiento sobre computadoras es básico, puede continuar con el menú de accesos directos que ya ha seleccionado el programa por defecto.

Instalando RStudio | totumat.com

Seguidamente empezará el proceso de instalación, que no debería demorar más de 5 minutos.

Instalando RStudio | totumat.com

Una vez que se complete la barra de instalación, finalizamos la instalación.

RStudio, lo básico.

Una vez que hemos descargado e instalado RStudio, podemos ubicar el acceso directo a este a través del menú de inicio. Haciendo click en el acceso directo se abrirá el programa y lo primero que encontraremos será una ventana donde se nos pregunta si deseamos que los reportes de problemas con el software se envíen automáticamente, cada quién toma su propia decisión, en mi caso la respuesta es positiva pues el software libre se hace cada vez más sofisticado gracias a estos reportes.

Una vez contestado esta pregunta, podemos empezar a usar R a través del IDE que provee RStudio y visualmente, notamos la diferencia, aunque podemos identificar algunos elementos básicos que en un principio encontramos en la interfaz original de R tal como la consola:

En ella podemos ejecutar todas las instrucciones tal como lo hemos hecho en la interfaz original y para crear un nuevo script, seguimos la siguiente línea de opciones

File > New File > R Script

Veremos que se ha abierto un nuevo panel, donde podemos escribir nuestro nuevo script:

Veamos un ejemplo de un script simple.

Suponga que tiene la siguiente tarea: Considerando cinco personas, guarde las edades de cada uno en cinco variables distintas llamadas p_1, p_2, p_3, p_4 y p_5; calcule la edad promedio de estos y guarde este valor en una variable llamada m; calcule la varianza de este conjunto de datos y guarde este valor en una variable llamada var.

Los datos con los que contamos son los siguientes:

  • Juan tiene 52 años.
  • Pedro tiene 14 años.
  • Fabiana tiene 33 años.
  • Jerick tiene 5 años.
  • Laura tiene 23 años.

Definimos las variables escribiendo las siguientes instrucciones en nuestro script:

p_1 <- 52
p_2 <- 14
p_3 <- 33
p_4 <- 5
p_5 <- 23

La edad promedio de estas cinco personas, se calcula sumando todas las edades y dividiendo todo esto entre cinco, es decir,

\dfrac{p_1 + p_2 + p_3 + p_4 + p_5}{5}

Entonces, escribimos la siguiente instrucción en nuestro script:

m <- (p_1 + p_2 + p_3 + p_4 + p_5)/5

La varianza se calcula sumando los cuadrados de la diferencias entre cada observación y la media, y dividiwndo todo esto entre cinco, es decir,

\dfrac{(p_1-m)^2 + (p_2 -m)^2  + (p_3 -m)^2  + (p_4 -m)^2  + (p_5 -m)^2 }{5}

Entonces, escribimos la siguiente instrucción en nuestro script:

var <- ((p_1-m)^2 + (p_2 -m)^2  + (p_3 -m)^2  + (p_4 -m)^2  + (p_5 -m)^2)/5

En su pantalla debería aparecer:

Puede ejecutar la instrucción de cada línea en el script seleccionándola y haciendo click en el botón de run (o presionando CTRL + ENTER) o puede ejecutar todas las instrucciones de una vez seleccionando todas las líneas y presionando run (o presionando CTRL + ENTER).

De esta forma, se ejecutan las instrucciones en la consola sin necesidad de copiarlas y pegarlas, además, el script se mantiene intacto, lo que permite manipular las instrucciones con facilidad en el caso que hayamos escrito algo mal.

En la consola aparecerá:

> p_1 <- 52
> p_2 <- 14
> p_3 <- 33
> p_4 <- 5
> p_5 <- 23
> m <- (p_1 + p_2 + p_3 + p_4 + p_5)/5
> var <- ((p_1-m)^2 + (p_2 -m)^2  + (p_3 -m)^2  + (p_4 -m)^2  + (p_5 -m)^2)/5

En su pantalla debería aparecer:

Notando además, que hay un panel llamado Environment donde podemos ver todas las variables que hemos definido junto con los valores que almacenan, esto es importante pues de esta forma podemos detectar si nuestro script presenta alguna falla.

Interfaz de R

R, lo básico.

Una vez que hemos descargado e instalado R, podemos empezar a trabajar en él, pero antes debemos identificar algunos de sus elementos para entender la forma en que le daremos instrucciones a la computadora para que haga los cálculos para nosotros.

También pudiera interesarte

Anuncios

La interfaz gráfica de R

R es el programa que toma las instrucciones que le demos a la computadora y las ejecuta, y aunque lo ideal es que nos leyera la mente o que escuchara las órdenes que le damos a través de comandos de voz, esta no es la realidad. Es por esto que al instalar el programa, también se provee una interfaz gráfica donde podemos escribir las instrucciones que le queremos dar.

Ubicando el acceso directo de R en nuestro escritorio, hacemos doble click en él para abrir el programa.

Lo primero que veremos al abrirse el programa es la interfaz gráfica de R y en ella podemos identificar una ventana con un texto que consta con información sobre la versión que estamos usando, la licencia y algunos tips. Este espacio es conocido como: la consola.

Consola

La consola es el espacio donde le daremos las instrucciones a R para que haga los cálculos por nosotros. Notemos que en ella hay un símbolo «>» de color rojo, es ahí donde aparecerán las instrucciones que queremos dar, y de hecho, empecemos por darle nuestra primera instrucción: calcule la suma dos más dos.

Para esto, escribimos lo siguiente:

2+2

En su pantalla debería aparecer:

Para ejecutar la instrucción presionamos la tecla ENTER e inmediatamente debemos ver el resultado.

> 2+2
[1] 4

En su pantalla debería aparecer:

Operaciones básicas

Perfecto, ya hemos ejecutado nuestra primera instrucción en R y si bien, es una tarea sencilla como una suma, veremos que podemos efectuar más operaciones y también instrucciones más complejas. Por ejemplo, si queremos calcular el resultado de la operación

\dfrac{-3+\sqrt{3^2-4 \cdot 5 \cdot (-2) }}{10}

Antes, debemos entender cómo se indican las operaciones básicas en R:

  • La suma se indica con +
  • La resta se indica con –
  • El producto se indica con *
  • La división se indica con /
  • La potencia se indica con ^
  • La raíz cuadrada se indica con sqrt()
  • Se agrupan operaciones con ()

Sabiendo esto, para efectuar la operación, escribimos lo siguiente:

(-3+sqrt(3^3-4*5*(-2)))/10

Para ejecutar la instrucción presionamos la tecla ENTER e inmediatamente debemos ver el resultado.

> (-3+sqrt(3^3-4*5*(-2)))/10
[1] 0.5185353

En su pantalla debería aparecer:

Variables

Es común que al toparnos con operaciones engorrosas de escribir, resulte necesario volverlas a efectuar para usar el resultado que estas producen, por lo que resulta necesario almacenarlas en un espacio de la memoria. Para esto definimos las variables.

Una variable nos provee un espacio de almacenamiento que puede ser nombrado para posteriormente ser manipulado para generar resultados más complejos y si bien, podemos almacenar en ella el resultado de algunas operaciones básicas, a medida que aprendemos más sobre el uso de R, veremos que podemos almacenar otro tipo de elementos.

El nombre que le demos a una variable puede contener letras, números, puntos o subguiones; por ejemplo: var, PIB, M0, M1, M2, casas_3 o media.edad. Supongamos que queremos almacenar el resultado de la operación 2+2 en una variable llamada var, entonces escribimos lo siguiente:

var <- 2+2

Para ejecutar la instrucción presionamos la tecla ENTER, en su pantalla debería aparecer:

Esto es lo que se conoce como definir una variable, la instrucción «<-» denota una flecha esto quiere decir que a la variable var le estamos almacenando el resultado de la operación 2+2. Aunque otra forma de definir una variable es usando el signo de igualdad «=», entonces para definir esta variable, podemos escribir lo siguiente:

var = 2+2

Para ejecutar la instrucción presionamos la tecla ENTER, en su pantalla debería aparecer:

Una vez que hemos definido una variable, podemos utilizarla para operaciones más complejas. Por ejemplo, si al resultado que hemos almacenado en la variable var le queremos sumar seis, entonces escribimos

var+6

Para ejecutar la instrucción presionamos la tecla ENTER e inmediatamente debemos ver el resultado.

> var+6
[1] 10

En su pantalla debería aparecer:

Podemos también definir otras variables y efectuar operaciones entre ellas. Por ejemplo, si definimos una variable var_1 que almacena el producto de tres por cinco y otra variable var_2 que almacena la división de doce entre cuatro, podemos efectuar la resta de estas dos variables.

Para esto, ejecutamos las siguientes instrucciones:

var_1 <- 3*5
var_2 <- 12/4
var_1 - var_2

Para ejecutar cada instrucción presionamos la tecla ENTER e inmediatamente debemos ver el resultado.

> var_1 <- 3*5
> var_2 <- 12/4
> var_1 - var_2
[1] 12

En su pantalla debería aparecer:

Scripts

Trabajar con problemas más complejos requiere de instrucciones más complejas, o incluso, secuencias de instrucciones. Afortunadamente, la interfaz gráfica de R trae incorporada un editor de texto que nos permite escribir estas secuencias de instrucciones y que además, se pueden ejecutar sin necesidad de copiarlas y pegarlas en la consola.

Un script es una secuencia de instrucciones que nos permite llevar a cabo una tarea, estos se escriben en el editor de texto que provee R para posteriormente ser ejecutados, ya sean línea por línea o en su totalidad. Para crear un nuevo script, ubicamos el menú de Archivo, hacemos click en él y seleccionamos Nuevo Script.

Inmediatamente se abrirá una nueva ventana con un editor de texto sobre el cuál podemos escribir.

En este momento, recomiendo ajustar el tamaño y posición de la ventana que muestra la consola y la ventana que muestra el script para poder observar ambas con mayor comodidad, para esto, ubicamos el menú Ventanas, hacemos click en él y seleccionamos el arreglo más cómodo. A mí en particular me gusta la pantalla Dividida Horizontalmente.

Veamos un ejemplo de un script simple.

Suponga que tiene la siguiente tarea: Considerando cinco personas, guarde las edades de cada uno en cinco variables distintas llamadas p_1, p_2, p_3, p_4 y p_5; calcule la edad promedio de estos y guarde este valor en una variable llamada m; calcule la varianza de este conjunto de datos y guarde este valor en una variable llamada var.

Los datos con los que contamos son los siguientes:

  • Juan tiene 52 años.
  • Pedro tiene 14 años.
  • Fabiana tiene 33 años.
  • Jerick tiene 5 años.
  • Laura tiene 23 años.

Definimos las variables escribiendo las siguientes instrucciones en nuestro script:

p_1 <- 52
p_2 <- 14
p_3 <- 33
p_4 <- 5
p_5 <- 23

La edad promedio de estas cinco personas, se calcula sumando todas las edades y dividiendo todo esto entre cinco, es decir,

\dfrac{p_1 + p_2 + p_3 + p_4 + p_5}{5}

Entonces, escribimos la siguiente instrucción en nuestro script:

m <- (p_1 + p_2 + p_3 + p_4 + p_5)/5

La varianza mide la variabilidad de los datos respecto a su media y se calcula sumando los cuadrados de la diferencias entre cada observación y la media, y dividiendo todo esto entre cinco, es decir,

\dfrac{(p_1-m)^2 + (p_2 -m)^2  + (p_3 -m)^2  + (p_4 -m)^2  + (p_5 -m)^2 }{5}

Entonces, escribimos la siguiente instrucción en nuestro script:

var <- ((p_1-m)^2 + (p_2 -m)^2  + (p_3 -m)^2  + (p_4 -m)^2  + (p_5 -m)^2)/5

En su pantalla debería aparecer:

Puede ejecutar la instrucción de cada línea en el script seleccionándola y haciendo click en el botón de correr línea o puede ejecutar todas las instrucciones de una vez seleccionando todas las líneas y presionando correr línea.

De esta forma, se ejecutan las instrucciones en la consola sin necesidad de copiarlas y pegarlas, además, el script se mantiene intacto, lo que permite manipular las instrucciones con facilidad en el caso que hayamos escrito algo mal.

En la consola aparecerá:

> p_1 <- 52
> p_2 <- 14
> p_3 <- 33
> p_4 <- 5
> p_5 <- 23
> m <- (p_1 + p_2 + p_3 + p_4 + p_5)/5
> var <- ((p_1-m)^2 + (p_2 -m)^2  + (p_3 -m)^2  + (p_4 -m)^2  + (p_5 -m)^2)/5