setwd("C:/Users/USUARIO/Documents/2024-1/Estadística 2 teoría/Ejercicios extra magallanes")
library(rio)
## Warning: package 'rio' was built under R version 4.3.3
broadband=import("Broadband.csv")
e_carbon=import("Carbon dioxide emissions.csv")
p_debt=import("Public debt.csv")
tcellular=import("Telephones - mobile cellular.csv")
e_debt=import("Debt external.csv")
electricity=import("Electricity.csv")
energy_perc=import("Energy per cap.csv")
inflation_rate=import("Inflation rate.csv")
r_petroleum=import("Refined petroleum products.csv")
tfixed_lines=import("Telephones - fixed lines.csv")
y_emp_rate=import("Youth unemployment rate.csv")
rename_columns <- function(df, conjunto) {
colnames(df)[1] <- "Country"
colnames(df)[2] <- conjunto
return(df)
}
broadband <- rename_columns(broadband, "Broadband")
e_carbon <- rename_columns(e_carbon, "CarbonDioxideEmissions")
p_debt <- rename_columns(p_debt, "PublicDebt")
tcellular <- rename_columns(tcellular, "MobileCellular")
e_debt <- rename_columns(e_debt, "ExternalDebt")
electricity <- rename_columns(electricity, "Electricity")
energy_perc <- rename_columns(energy_perc, "EnergyPerCapita")
inflation_rate <- rename_columns(inflation_rate, "InflationRate")
r_petroleum <- rename_columns(r_petroleum, "RefinedPetroleumProducts")
tfixed_lines <- rename_columns(tfixed_lines, "FixedLines")
y_emp_rate <- rename_columns(y_emp_rate, "YouthUnemploymentRate")
library(dplyr)
## Warning: package 'dplyr' was built under R version 4.3.3
##
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
##
## filter, lag
## The following objects are masked from 'package:base':
##
## intersect, setdiff, setequal, union
broadband <- broadband %>% select(Country, Broadband)
e_carbon <- e_carbon %>% select(Country, CarbonDioxideEmissions)
p_debt <- p_debt %>% select(Country, PublicDebt)
tcellular <- tcellular %>% select(Country, MobileCellular)
e_debt <- e_debt %>% select(Country, ExternalDebt)
electricity <- electricity %>% select(Country, Electricity)
energy_perc <- energy_perc %>% select(Country, EnergyPerCapita)
inflation_rate <- inflation_rate %>% select(Country, InflationRate)
r_petroleum <- r_petroleum %>% select(Country, RefinedPetroleumProducts)
tfixed_lines <- tfixed_lines %>% select(Country, FixedLines)
y_emp_rate <- y_emp_rate %>% select(Country, YouthUnemploymentRate)
DATA <- list(broadband, e_carbon, p_debt, tcellular, e_debt, electricity, energy_perc, inflation_rate, r_petroleum, tfixed_lines, y_emp_rate)
merged_data <- Reduce(function(x, y) {
merge(x, y, by = "Country", all = TRUE)
}, DATA)
merged_data$Country <- as.character(merged_data$Country)
merged_data$Broadband <- as.numeric(merged_data$Broadband)
## Warning: NAs introducidos por coerción
merged_data$CarbonDioxideEmissions <- as.numeric(merged_data$CarbonDioxideEmissions)
## Warning: NAs introducidos por coerción
merged_data$PublicDebt <- as.numeric(merged_data$PublicDebt)
## Warning: NAs introducidos por coerción
merged_data$MobileCellular <- as.numeric(merged_data$MobileCellular)
## Warning: NAs introducidos por coerción
merged_data$ExternalDebt <- as.numeric(merged_data$ExternalDebt)
## Warning: NAs introducidos por coerción
merged_data$Electricity <- as.numeric(merged_data$Electricity)
## Warning: NAs introducidos por coerción
merged_data$EnergyPerCapita <- as.numeric(merged_data$EnergyPerCapita)
## Warning: NAs introducidos por coerción
merged_data$InflationRate <- as.numeric(merged_data$InflationRate)
## Warning: NAs introducidos por coerción
merged_data$RefinedPetroleumProducts <- as.numeric(merged_data$RefinedPetroleumProducts)
## Warning: NAs introducidos por coerción
merged_data$FixedLines <- as.numeric(merged_data$FixedLines)
## Warning: NAs introducidos por coerción
merged_data$YouthUnemploymentRate <- as.numeric(merged_data$YouthUnemploymentRate)
## Warning: NAs introducidos por coerción
head(merged_data)
## Country Broadband CarbonDioxideEmissions PublicDebt MobileCellular
## 1 Afghanistan NA NA NA NA
## 2 Albania NA NA NA NA
## 3 Algeria NA NA NA NA
## 4 American Samoa NA NA NA NA
## 5 Andorra NA NA NA NA
## 6 Angola NA NA NA NA
## ExternalDebt Electricity EnergyPerCapita InflationRate
## 1 NA NA NA NA
## 2 NA NA NA NA
## 3 NA NA NA NA
## 4 NA NA NA NA
## 5 NA NA NA NA
## 6 NA NA NA NA
## RefinedPetroleumProducts FixedLines YouthUnemploymentRate
## 1 NA NA NA
## 2 NA NA NA
## 3 NA NA NA
## 4 NA NA NA
## 5 NA NA NA
## 6 NA NA NA
head(broadband)
## Country Broadband
## 1 China china
## 2 United States united-states
## 3 Japan japan
## 4 Brazil brazil
## 5 Germany germany
## 6 Russia russia
head(e_carbon)
## Country CarbonDioxideEmissions
## 1 China china
## 2 United States united-states
## 3 India india
## 4 Russia russia
## 5 Japan japan
## 6 Germany germany
head(p_debt)
## Country PublicDebt
## 1 Greece greece
## 2 Japan japan
## 3 United Kingdom united-kingdom
## 4 Singapore singapore
## 5 Lebanon lebanon
## 6 Barbados barbados
head(tcellular)
## Country MobileCellular
## 1 China china
## 2 India india
## 3 United States united-states
## 4 Indonesia indonesia
## 5 Russia russia
## 6 Nigeria nigeria
head(e_debt)
## Country ExternalDebt
## 1 United States united-states
## 2 United Kingdom united-kingdom
## 3 France france
## 4 Germany germany
## 5 Netherlands netherlands
## 6 Luxembourg luxembourg
head(electricity)
## Country Electricity
## 1 China china
## 2 United States united-states
## 3 India india
## 4 Japan japan
## 5 Russia russia
## 6 Germany germany
head(energy_perc)
## Country EnergyPerCapita
## 1 Qatar qatar
## 2 Singapore singapore
## 3 Bahrain bahrain
## 4 United Arab Emirates united-arab-emirates
## 5 Brunei brunei
## 6 Canada canada
head(inflation_rate)
## Country InflationRate
## 1 South Sudan south-sudan
## 2 Andorra andorra
## 3 Dominica dominica
## 4 American Samoa american-samoa
## 5 Liechtenstein liechtenstein
## 6 Faroe Islands faroe-islands
head(r_petroleum)
## Country RefinedPetroleumProducts
## 1 United States united-states
## 2 China china
## 3 Russia russia
## 4 India india
## 5 Japan japan
## 6 Korea, South korea-south
head(tfixed_lines)
## Country FixedLines
## 1 China china
## 2 United States united-states
## 3 Japan japan
## 4 Germany germany
## 5 France france
## 6 United Kingdom united-kingdom
head(y_emp_rate)
## Country YouthUnemploymentRate
## 1 Djibouti djibouti
## 2 South Africa south-africa
## 3 Eswatini eswatini
## 4 Libya libya
## 5 Kosovo kosovo
## 6 Costa Rica costa-rica
library(readr)
## Warning: package 'readr' was built under R version 4.3.3
limpio <- function(column) {
numeric_column <- parse_number(column)
na_count <- sum(is.na(numeric_column))
if (na_count > 0) {
cat("La columna contiene", na_count, "valores que no se pudieron convertir a numéricos.\n")
non_numeric_values <- column[is.na(numeric_column)]
cat("valores no numéricos:\n")
print(head(non_numeric_values))
}
return(numeric_column)
}
print(class(merged_data$Broadband))
## [1] "numeric"
print(class(merged_data$CarbonDioxideEmissions))
## [1] "numeric"
print(class(merged_data$PublicDebt))
## [1] "numeric"
print(class(merged_data$MobileCellular))
## [1] "numeric"
print(class(merged_data$ExternalDebt))
## [1] "numeric"
print(class(merged_data$Electricity))
## [1] "numeric"
print(class(merged_data$EnergyPerCapita))
## [1] "numeric"
print(class(merged_data$InflationRate))
## [1] "numeric"
print(class(merged_data$RefinedPetroleumProducts))
## [1] "numeric"
print(class(merged_data$FixedLines))
## [1] "numeric"
print(class(merged_data$YouthUnemploymentRate))
## [1] "numeric"
for (col in colnames(merged_data)) {
if (class(merged_data[[col]]) == "character") {
merged_data[[col]] <- limpio(merged_data[[col]])
}
}
## Warning: 231 parsing failures.
## row col expected actual
## 1 -- a number Afghanistan
## 2 -- a number Albania
## 3 -- a number Algeria
## 4 -- a number American Samoa
## 5 -- a number Andorra
## ... ... ........ ..............
## See problems(...) for more details.
## La columna contiene 231 valores que no se pudieron convertir a numéricos.
## valores no numéricos:
## [1] "Afghanistan" "Albania" "Algeria" "American Samoa"
## [5] "Andorra" "Angola"
head(merged_data)
## Country Broadband CarbonDioxideEmissions PublicDebt MobileCellular
## 1 NA NA NA NA NA
## 2 NA NA NA NA NA
## 3 NA NA NA NA NA
## 4 NA NA NA NA NA
## 5 NA NA NA NA NA
## 6 NA NA NA NA NA
## ExternalDebt Electricity EnergyPerCapita InflationRate
## 1 NA NA NA NA
## 2 NA NA NA NA
## 3 NA NA NA NA
## 4 NA NA NA NA
## 5 NA NA NA NA
## 6 NA NA NA NA
## RefinedPetroleumProducts FixedLines YouthUnemploymentRate
## 1 NA NA NA
## 2 NA NA NA
## 3 NA NA NA
## 4 NA NA NA
## 5 NA NA NA
## 6 NA NA NA
caracter_cols <- sapply(DATA, is.character)
for (col in names(DATA)[caracter_cols]) { DATA[[col]] <- limpio(DATA[[col]])