Etapa I: Preparación de datos

Llamar liberías

#install.packages("haven")
library(haven)
## Warning: package 'haven' was built under R version 4.3.3
#install.packages("foreign")
library(foreign)
## Warning: package 'foreign' was built under R version 4.3.3
#install.packages("Hmisc")
library(Hmisc)
## Warning: package 'Hmisc' was built under R version 4.3.3
## 
## Attaching package: 'Hmisc'
## The following objects are masked from 'package:base':
## 
##     format.pval, units
#install.packages("stargazer")
library(stargazer)
## 
## Please cite as:
##  Hlavac, Marek (2022). stargazer: Well-Formatted Regression and Summary Statistics Tables.
##  R package version 5.2.3. https://CRAN.R-project.org/package=stargazer

Importar base de datos

bdatos <- read_dta("wage1.dta")

Crear variable nominal en la base de datos

bdatos$trade<-as.factor(bdatos$trade)

Solicitar atributos

levels(bdatos$trade)
## [1] "0" "1"

Agregar etiquetas

levels(bdatos$trade)<-c("Minorista", "Mayorista")

Comprobamos la integración de las etiquetas

summary(bdatos$trade)
## Minorista Mayorista 
##       375       151

Etapa II: Creación de subconjuntos

Eliminación de la variable

bdatos$west<-NULL

Conjuntos y subconjuntos

attach(bdatos)
subejemplo <- data.frame(wage, educ) 
detach(bdatos)
names(subejemplo)
## [1] "wage" "educ"
describe(subejemplo)
## subejemplo 
## 
##  2  Variables      526  Observations
## --------------------------------------------------------------------------------
## wage : Promedio de ganancias por hora  Format:%8.2g 
##        n  missing distinct     Info     Mean      Gmd      .05      .10 
##      526        0      241    0.999    5.896    3.638     2.77     2.92 
##      .25      .50      .75      .90      .95 
##     3.33     4.65     6.88    10.00    12.88 
## 
## lowest : 0.53  1.43  1.5   1.63  1.67 , highest: 21.63 21.86 22.2  22.86 24.98
## --------------------------------------------------------------------------------
## educ : Años de educación  Format:%8.0g 
##        n  missing distinct     Info     Mean      Gmd      .05      .10 
##      526        0       18    0.942    12.56    2.936        8        9 
##      .25      .50      .75      .90      .95 
##       12       12       14       16       17 
##                                                                             
## Value          0     2     3     4     5     6     7     8     9    10    11
## Frequency      2     1     1     3     1     6     4    22    17    30    29
## Proportion 0.004 0.002 0.002 0.006 0.002 0.011 0.008 0.042 0.032 0.057 0.055
##                                                     
## Value         12    13    14    15    16    17    18
## Frequency    198    39    53    21    68    12    19
## Proportion 0.376 0.074 0.101 0.040 0.129 0.023 0.036
## 
## For the frequency table, variable is rounded to the nearest 0
## --------------------------------------------------------------------------------

Etapa III: Resumen de datos

str(subejemplo)
## 'data.frame':    526 obs. of  2 variables:
##  $ wage: num  3.1 3.24 3 6 5.3 ...
##   ..- attr(*, "label")= chr "Promedio de ganancias por hora"
##   ..- attr(*, "format.stata")= chr "%8.2g"
##  $ educ: num  11 12 11 8 12 16 18 12 12 17 ...
##   ..- attr(*, "label")= chr "Años de educación"
##   ..- attr(*, "format.stata")= chr "%8.0g"
summary(subejemplo)
##       wage             educ      
##  Min.   : 0.530   Min.   : 0.00  
##  1st Qu.: 3.330   1st Qu.:12.00  
##  Median : 4.650   Median :12.00  
##  Mean   : 5.896   Mean   :12.56  
##  3rd Qu.: 6.880   3rd Qu.:14.00  
##  Max.   :24.980   Max.   :18.00

Etapa IV: Modelo de Regresión

~

modelo2 <- lm(wage ~ educ, data = subejemplo)
stargazer(modelo2, title = "Modelo estimado", type= "text")
## 
## Modelo estimado
## ===============================================
##                         Dependent variable:    
##                     ---------------------------
##                                wage            
## -----------------------------------------------
## educ                         0.541***          
##                               (0.053)          
##                                                
## Constant                      -0.905           
##                               (0.685)          
##                                                
## -----------------------------------------------
## Observations                    526            
## R2                             0.165           
## Adjusted R2                    0.163           
## Residual Std. Error      3.378 (df = 524)      
## F Statistic          103.363*** (df = 1; 524)  
## ===============================================
## Note:               *p<0.1; **p<0.05; ***p<0.01

Etapa IV: Guardando los resultados

Si yo deseo guardar la base de datos generada a partir del subconjunto previamente elaborado, así como las nuevas variables que generé en mi subconjunto, tengo varias opciones para hacerlo.

Guardando los resultados en R

Si deseamos guardar la base de datos generada en formato de R, lo hacemos con el comando save:

save(subejemplo,file="subejemplo.rda")

Guardando los resultados en SPSS

Si deseamos guardar la base de datos generada en formato de SPSS, lo hacemos con el comando write_sav del paquete haven:

write_sav(subejemplo, "subejemplo.sav")

Guardando los resultados en Excel

Si deseamos guardar la base de datos generada en formato .xlsx de Excel, lo hacemos con el comando write.xlsx del paquete openxlsx:

#library(openxlsx)
#write.xlsx(subejemplo, "subejemplo.xlsx")

También puedes guardar en el formato separado por comas que es más ligero y que también lo puedes abrir en Excel con el comando write.csv.

write.csv(subejemplo,file="subejemplo.csv")

Guardando los resultados en Stata

También podemos guardarlo en Stata con el comando write_dta del paquete haven:

write_dta(subejemplo, "subejemplo.dta")

Etapa V: Presentación de resultados

Por último vamos a tejer (knit) nuestros resultados en un archivo HTML, PDF y DOCX. Para ello necesitamos que todo nuestro código esté bien escrito (que no haya errores), y esté guardado. Esta opcion es clave para la comunicación de nuestros resultados. Para que pueda exportar los resultados en PDF es necesario tener LaTex (un software que permite crear archivos de texto). Para descargar el instalador que se adapta a tu sistema operativo puedes entrar a https://www.latex-project.org/get/ o puedes inslarlo desde el mismo RStudio con el siguiente código.

#tinytex::install_tinytex()