Estimación de b0 y b1. Relación entre propiedad de teléfonos y PIB per cápita en Singapur.

En este documento se realiza la estimacion de b0 y b1. Para la realización de este ejercicio se usan los datos de la tercera edición del libro “Econometría Básica” Capítulo 3, ejercicio 3.2.1. Se realiza la comparación entre el número de teléfonos por cada 1000 personas (Y) y el Producto Interior Bruto per cápita (PIB), a un costo de factores (X) en dólares de Singapur de 1968) para Singapur durante el periodo 1960-1981. Como se puede observar, la variable independiente corresponde al PIB per capita, y la variable dependiente es el número de teléfonos por cada 1000 personas.

Explicación del código paso a paso

Primero…

Llamamos a la librería “readr” que proporciona una forma rápida y sencilla de leer datos rectangulares de archivos delimitados, como valores separados por comas (CSV). Después, se importan los datos, en este caso importé un excel desde mis archivos. Los datos son los correspondientes a la tabla.

library(readr)
tps <- read_csv("D:/USUARIO/Desktop/Ta_eco/tps.csv")
View(tps)
tps
## # A tibble: 22 × 3
##     anio num_tel pib_pc
##    <dbl>   <dbl>  <dbl>
##  1  1960      36   1299
##  2  1961      37   1365
##  3  1962      38   1409
##  4  1963      41   1549
##  5  1964      42   1416
##  6  1965      45   1473
##  7  1966      48   1589
##  8  1967      54   1757
##  9  1968      59   1974
## 10  1969      67   2204
## # … with 12 more rows
Segundo

Se ejecutan las funciones “attach” y “names”. La función “attach” para que R interprete cada columna como una variable y la función “names” para conocer el nombre de las variables en la tabla.

attach(tps)
names(tps)
## [1] "anio"    "num_tel" "pib_pc"
Tercero

Se cambia el tipo de variable. En este caso R reconocía las variables como carácteres, por lo que se realizó el cambio a tipo numérico con la función “as”.

x=as.numeric(as.character(tps$pib_pc))
y=as.numeric(as.character(tps$num_tel))
Cuarto

Hallamos el b1. Para esto utilizamos la fórmula de b1:

b1=((nrow(tps)*sum(x*y))-(sum(x)*sum(y)))/((nrow(tps)*sum(x^2))-(sum(x)^2))
b1
## [1] 0.06505015
Quinto

Hallamos el b0. Utilizamos la formula de b0= ŷ- b1*x.

b0=mean(y)-mean(x)*b1
b0
## [1] -66.10579

Y listo…Tenemos la estimación de nuestras betas.

Así se ve el código completo

library(readr)
tps <- read_csv("D:/USUARIO/Desktop/Ta_eco/tps.csv")
View(tps)
tps
## # A tibble: 22 × 3
##     anio num_tel pib_pc
##    <dbl>   <dbl>  <dbl>
##  1  1960      36   1299
##  2  1961      37   1365
##  3  1962      38   1409
##  4  1963      41   1549
##  5  1964      42   1416
##  6  1965      45   1473
##  7  1966      48   1589
##  8  1967      54   1757
##  9  1968      59   1974
## 10  1969      67   2204
## # … with 12 more rows
attach(tps)
names(tps)
## [1] "anio"    "num_tel" "pib_pc"
x=as.numeric(as.character(tps$pib_pc))
y=as.numeric(as.character(tps$num_tel))
b1=((nrow(tps)*sum(x*y))-(sum(x)*sum(y)))/((nrow(tps)*sum(x^2))-(sum(x)^2))
b1
## [1] 0.06505015
b0=mean(y)-mean(x)*b1
b0
## [1] -66.10579