Llamar librerías

library(WDI)
## Warning: package 'WDI' was built under R version 4.2.3
library(wbstats)
## Warning: package 'wbstats' was built under R version 4.2.3
library(tidyverse)
## Warning: package 'tidyverse' was built under R version 4.2.3
## Warning: package 'ggplot2' was built under R version 4.2.3
## ── Attaching core tidyverse packages ──────────────────────── tidyverse 2.0.0 ──
## ✔ dplyr     1.1.0     ✔ readr     2.1.4
## ✔ forcats   1.0.0     ✔ stringr   1.5.0
## ✔ ggplot2   3.4.1     ✔ tibble    3.1.8
## ✔ lubridate 1.9.2     ✔ tidyr     1.3.0
## ✔ purrr     1.0.1     
## ── Conflicts ────────────────────────────────────────── tidyverse_conflicts() ──
## ✖ dplyr::filter() masks stats::filter()
## ✖ dplyr::lag()    masks stats::lag()
## ℹ Use the ]8;;http://conflicted.r-lib.org/conflicted package]8;; to force all conflicts to become errors
library(forecast)
## Warning: package 'forecast' was built under R version 4.2.3
## Registered S3 method overwritten by 'quantmod':
##   method            from
##   as.zoo.data.frame zoo
library(ggplot2)

Pronóstico #1: PIB en México

gdp_data <- wb_data(country = "MX", indicator = "NY.GDP.PCAP.CD", start_date="1950", end_date=2022 )
# https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2
#Consultar el indicador en https://data.worldbank.org/indicator7
summary(gdp_data)
##     iso2c              iso3c             country               date     
##  Length:62          Length:62          Length:62          Min.   :1960  
##  Class :character   Class :character   Class :character   1st Qu.:1975  
##  Mode  :character   Mode  :character   Mode  :character   Median :1990  
##                                                           Mean   :1990  
##                                                           3rd Qu.:2006  
##                                                           Max.   :2021  
##  NY.GDP.PCAP.CD        unit            obs_status          footnote        
##  Min.   :  359.5   Length:62          Length:62          Length:62         
##  1st Qu.: 1353.7   Class :character   Class :character   Class :character  
##  Median : 3784.7   Mode  :character   Mode  :character   Mode  :character  
##  Mean   : 4724.5                                                           
##  3rd Qu.: 8267.6                                                           
##  Max.   :11076.1                                                           
##   last_updated       
##  Min.   :2023-03-01  
##  1st Qu.:2023-03-01  
##  Median :2023-03-01  
##  Mean   :2023-03-01  
##  3rd Qu.:2023-03-01  
##  Max.   :2023-03-01
head(gdp_data)
## # A tibble: 6 × 9
##   iso2c iso3c country  date NY.GDP.PCAP.CD unit  obs_status footnote last_upda…¹
##   <chr> <chr> <chr>   <dbl>          <dbl> <chr> <chr>      <chr>    <date>     
## 1 MX    MEX   Mexico   1960           360. <NA>  <NA>       <NA>     2023-03-01 
## 2 MX    MEX   Mexico   1961           378. <NA>  <NA>       <NA>     2023-03-01 
## 3 MX    MEX   Mexico   1962           393. <NA>  <NA>       <NA>     2023-03-01 
## 4 MX    MEX   Mexico   1963           424. <NA>  <NA>       <NA>     2023-03-01 
## 5 MX    MEX   Mexico   1964           486. <NA>  <NA>       <NA>     2023-03-01 
## 6 MX    MEX   Mexico   1965           511. <NA>  <NA>       <NA>     2023-03-01 
## # … with abbreviated variable name ¹​last_updated
PIB <- gdp_data$NY.GDP.PCAP.CD
#Para generar serie de tiempo se necesita una variable de una columna.

#Generar serie de tiempo (funcion ts)
PIB_st<-ts(data= PIB, start = c(1960), frequency = 1)
PIB_st
## Time Series:
## Start = 1960 
## End = 2021 
## Frequency = 1 
##  [1]   359.5451   378.2120   392.9346   424.1896   485.8001   511.0207
##  [7]   550.4699   581.7295   622.4251   666.7434   706.3132   755.3325
## [13]   844.1744  1000.9379  1264.3584  1499.3556  1472.6589  1314.0197
## [19]  1598.4655  2039.6463  3029.8874  3812.5808  2612.7592  2166.4613
## [25]  2507.3121  2607.3803  1765.1849  1902.4381  2302.0270  2759.4457
## [31]  3196.9189  3756.8899  4272.7860  5778.9387  5976.5236  4002.1743
## [37]  4487.2918  5370.2175  5555.7372  6230.6956  7232.8788  7613.1769
## [43]  7650.8988  7120.3848  7525.4652  8321.8535  9125.4226  9719.9205
## [49] 10119.8362  8104.9076  9399.9709 10341.5210 10376.0577 10865.6802
## [55] 11076.0925  9753.3800  8875.0623  9434.3865  9857.0288 10145.1702
## [61]  8655.0007 10045.6805
## attr(,"label")
## [1] GDP per capita (current US$)
# Generar pronóstico
modelo_PIB <- auto.arima(PIB_st, D=1) #0 Si no hay presencia, 1 Si hay
modelo_PIB
## Series: PIB_st 
## ARIMA(0,1,0) with drift 
## 
## Coefficients:
##          drift
##       158.7891
## s.e.   88.9207
## 
## sigma^2 = 490358:  log likelihood = -485.69
## AIC=975.38   AICc=975.59   BIC=979.6
pronostico_PIB <- forecast(modelo_PIB, level=c(95), h=5) #h 5 es para 5 años, pronósticos del 95%
pronostico_PIB
##      Point Forecast    Lo 95    Hi 95
## 2022       10204.47 8831.993 11576.95
## 2023       10363.26 8422.284 12304.23
## 2024       10522.05 8144.849 12899.25
## 2025       10680.84 7935.884 13425.79
## 2026       10839.63 7770.675 13908.58
plot(pronostico_PIB, main="Pronóstico a 5 años del PIB en México")

Información de varios países

more_gdp_data<-wb_data(country= c("NG", "HT","KE"),indicator="NY.GDP.PCAP.CD", start_date=1950, end_date=2022)

ggplot(data = more_gdp_data) +
  geom_path(mapping= aes(x=date, y=NY.GDP.PCAP.CD, color= country)) +
  labs( x="Año", y= "PIB", title="Comparación del PIB de Nigeria, Haití y Kenia")

LS0tDQp0aXRsZTogIkFjdGl2aWRhZCBJbmRpdmlkdWFsIDUiDQphdXRob3I6ICJKZXPDunMgRGFuaWVsIEZhcsOtYXMgQnVzdGFtYW50ZSB8IEEwMTIzNjMyNyINCmRhdGU6ICIyMDIzLTAzLTIyIg0Kb3V0cHV0OiANCiAgaHRtbF9kb2N1bWVudDoNCiAgICB0b2M6IHRydWUNCiAgICB0b2NfZmxvYXQ6IHRydWUNCiAgICBjb2RlX2Rvd25sb2FkOiB0cnVlDQotLS0NCiFbXShDOlxVc2Vyc1xEYW5pZWwgRmFyaWFzXERvY3VtZW50c1xCdXNpbmVzcyBJbnRlbGxpZ2VuY2VcQ3VhcnRvIFNlbWVzdHJlXFNlbWFuYSBUZWMgUHJvZ3JhXFRTLnBuZykNCg0KIyMjIExsYW1hciBsaWJyZXLDrWFzDQpgYGB7cn0NCmxpYnJhcnkoV0RJKQ0KbGlicmFyeSh3YnN0YXRzKQ0KbGlicmFyeSh0aWR5dmVyc2UpDQpsaWJyYXJ5KGZvcmVjYXN0KQ0KbGlicmFyeShnZ3Bsb3QyKQ0KYGBgDQoNCiMjIyBQcm9uw7NzdGljbyAjMTogUElCIGVuIE3DqXhpY28NCmBgYHtyfQ0KZ2RwX2RhdGEgPC0gd2JfZGF0YShjb3VudHJ5ID0gIk1YIiwgaW5kaWNhdG9yID0gIk5ZLkdEUC5QQ0FQLkNEIiwgc3RhcnRfZGF0ZT0iMTk1MCIsIGVuZF9kYXRlPTIwMjIgKQ0KIyBodHRwczovL2VuLndpa2lwZWRpYS5vcmcvd2lraS9JU09fMzE2Ni0xX2FscGhhLTINCiNDb25zdWx0YXIgZWwgaW5kaWNhZG9yIGVuIGh0dHBzOi8vZGF0YS53b3JsZGJhbmsub3JnL2luZGljYXRvcjcNCnN1bW1hcnkoZ2RwX2RhdGEpDQpoZWFkKGdkcF9kYXRhKQ0KUElCIDwtIGdkcF9kYXRhJE5ZLkdEUC5QQ0FQLkNEDQojUGFyYSBnZW5lcmFyIHNlcmllIGRlIHRpZW1wbyBzZSBuZWNlc2l0YSB1bmEgdmFyaWFibGUgZGUgdW5hIGNvbHVtbmEuDQoNCiNHZW5lcmFyIHNlcmllIGRlIHRpZW1wbyAoZnVuY2lvbiB0cykNClBJQl9zdDwtdHMoZGF0YT0gUElCLCBzdGFydCA9IGMoMTk2MCksIGZyZXF1ZW5jeSA9IDEpDQpQSUJfc3QNCg0KIyBHZW5lcmFyIHByb27Ds3N0aWNvDQptb2RlbG9fUElCIDwtIGF1dG8uYXJpbWEoUElCX3N0LCBEPTEpICMwIFNpIG5vIGhheSBwcmVzZW5jaWEsIDEgU2kgaGF5DQptb2RlbG9fUElCDQoNCnByb25vc3RpY29fUElCIDwtIGZvcmVjYXN0KG1vZGVsb19QSUIsIGxldmVsPWMoOTUpLCBoPTUpICNoIDUgZXMgcGFyYSA1IGHDsW9zLCBwcm9uw7NzdGljb3MgZGVsIDk1JQ0KcHJvbm9zdGljb19QSUINCg0KcGxvdChwcm9ub3N0aWNvX1BJQiwgbWFpbj0iUHJvbsOzc3RpY28gYSA1IGHDsW9zIGRlbCBQSUIgZW4gTcOpeGljbyIpDQpgYGANCg0KIyMjIEluZm9ybWFjacOzbiBkZSB2YXJpb3MgcGHDrXNlcw0KYGBge3J9DQptb3JlX2dkcF9kYXRhPC13Yl9kYXRhKGNvdW50cnk9IGMoIk5HIiwgIkhUIiwiS0UiKSxpbmRpY2F0b3I9Ik5ZLkdEUC5QQ0FQLkNEIiwgc3RhcnRfZGF0ZT0xOTUwLCBlbmRfZGF0ZT0yMDIyKQ0KDQpnZ3Bsb3QoZGF0YSA9IG1vcmVfZ2RwX2RhdGEpICsNCiAgZ2VvbV9wYXRoKG1hcHBpbmc9IGFlcyh4PWRhdGUsIHk9TlkuR0RQLlBDQVAuQ0QsIGNvbG9yPSBjb3VudHJ5KSkgKw0KICBsYWJzKCB4PSJBw7FvIiwgeT0gIlBJQiIsIHRpdGxlPSJDb21wYXJhY2nDs24gZGVsIFBJQiBkZSBOaWdlcmlhLCBIYWl0w60geSBLZW5pYSIpDQpgYGANCg0K