2. Exploración

Los contenidos de esta obra forman parte de un encargo de autoría de la Universitat Oberta de Catalunya (Mas 2020) y están sujetos a la licencia de Creative Commons CC BY-SA 3.0.

Para explicar todos los pasos que hay que seguir a la hora de construir un índice, utilizaremos de ejemplo el IDH, creado por las Naciones Unidas y que se ha convertido en uno de los índices más utilizados y conocidos en el ámbito del desarrollo. Los orígenes del IDH se remontan a los años ochenta, cuando economistas como Mahbub ul Haq y Amartya Sen empezaron a cuestionar el producto interior bruto (PIB) como medida del desarrollo (Sen 1981, 1985; UNDP 1990). Defendían que el desarrollo tenía que ir más allá de cuestiones estrictamente económicas y debía tener en cuenta otros aspectos fundamentales de las capacidades de una persona como la educación o la salud. De esta nueva manera de pensar el desarrollo de una forma más «humana», salió el IDH, que añadió otras dos dimensiones a la dimensión económica: el acceso a la educación y una vida larga y saludable. En este apartado haremos una exploración del índice. Estos son los paquetes de R que utilizaremos:

#recordad que los paquetes tienen que estar previamente instalados
library(dplyr)
library(tidyr)
library(ggplot2)
library(countrycode)
library(readxl)
library(janitor)

Las dimensiones del IDH

El IDH, pues, consta de tres dimensiones conceptuales. Su operacionalización se encuentra resumida en la figura 1, que encontraréis también en las notas técnicas de la web del Programa de las Naciones Unidas para el Desarrollo (PNUD, conocido como UNDP en inglés).

  • Para medir la dimensión económica, utilizan la renta nacional bruta (RNB, GNI en inglés), una medida muy parecida al PIB.

  • El acceso a la educación se mide con dos indicadores: la media de años en la escuela para adultos de 25 años o más y los años esperados de educación para niños en edad de entrada a la escuela.

  • Finalmente, la vida larga y saludable se mide con la esperanza de vida al nacer.

Metodologia de l'IDH

Figure 1: Metodologia de l’IDH

Los datos que se recogen para crear el IDH los encontraréis en la página web del PNUD (UNDP 2018). A lo largo de este módulo utilizaremos los datos de 2018, que pueden descargarse en formato Excel, aunque es posible que en la web del PNUD podáis encontrar datos más recientes. En el siguiente código hemos descargado el archivo y hemos creado un objeto de R mediante la función read_xlsx() del paquete readxl. Le hemos dado el nombre de hddata, cuyas primeras observaciones podemos ver en la Tabla ??.

DESCARGA: Para descargar el archivo que necesitas, tienes dos opciones:

  1. Descargarlo con R mediante la función download.file() y acto seguido crear el objeto hhdata.
download.file("https://www.jordimas.cat/files/2018_all_indicators.xlsx", 
              "2018_all_indicators.xlsx")
hddata <- read_xlsx("2018_all_indicators.xlsx")
  1. Es possible que la función download.file() no funcione en algunos ordinadores. Si es tu caso, descarga el archivo manualmente y ubícalo en tu directorio de trabajo. A continuación, solo será necesario que transformes el archivo en objeto hhdata:
hddata <- read_xlsx("2018_all_indicators.xlsx")

Recuerda haber cargado los paquetes previamente antes de ejecutar el código.

Table 1: Primeras observaciones del marco de datos hddata
dimensionindicator_idindicator_nameiso3country_name19901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620179999
Composite indices146206HDI rankAFGAfghanistanNANANANANANANANANANANANANANANANANANANANANANANANANANA168168NA
Composite indices146206HDI rankALBAlbaniaNANANANANANANANANANANANANANANANANANANANANANANANANANA6968NA
Composite indices146206HDI rankDZAAlgeriaNANANANANANANANANANANANANANANANANANANANANANANANANANA8385NA
Composite indices146206HDI rankANDAndorraNANANANANANANANANANANANANANANANANANANANANANANANANANA3535NA
Composite indices146206HDI rankAGOAngolaNANANANANANANANANANANANANANANANANANANANANANANANANANA145147NA
Composite indices146206HDI rankATGAntigua and BarbudaNANANANANANANANANANANANANANANANANANANANANANANANANANA7070NA
Composite indices146206HDI rankARGArgentinaNANANANANANANANANANANANANANANANANANANANANANANANANANA4747NA
Composite indices146206HDI rankARMArmeniaNANANANANANANANANANANANANANANANANANANANANANANANANANA8483NA

Practica 1. Datos brutos: haced una primera visualización del marco de datos tecleando View(hddata). Responded a las siguientes preguntas:

  1. Usad glimpse(hddata) para averiguar cuántas observaciones y cuántas variables tiene el marco de datos hddata.
  2. ¿Diríais que, según los criterios de Wickham (2014), hddata es una tabla limpia o una tabla sucia? ¿Por qué?
  3. Interpretad los datos perdidos (NA) que observáis en la tabla.

Ejercicio 4. Notas técnicas del IDH: consultad la web del PNUD y las notas técnicas del IDH y responded a las siguientes preguntas:

  1. ¿Cuántos índices ha creado el PNUD, aparte del IDH? ¿Cuáles son los cuatro conceptos o temas principales que quieren medir? Relacionad estos temas o conceptos con el momento en el que surgen: ¿nos explican algo de los debates centrales de cada época en la agenda internacional?
  2. ¿Cuál es la principal distinción entre el IDH y el índice de desarrollo de género?

Exploración inicial del marco de datos

El marco de datos hddata contiene una columna por cada año de datos desde 1990 hasta 2017. Cuando trabajamos con R, nos es mucho más cómodo que cada columna sea una variable, puesto que así podemos manipular más fácilmente los datos. Como sabéis, los años (1990, 1991…) no son una variable, sino que son los valores que puede tomar la variable año. Todos los años, pues, tendrían que formar parte de una sola columna year que represente la variable año. También observamos que la variable indicator_name no contiene valores, sino nombres de variables. En el siguiente código hemos limpiado el marco de datos de forma que todas las columnas sean variables, y todas las hileras observaciones. De este proceso, ha salido el objeto hddata_tidy, que observamos en la Tabla 2.

hddata_tidy <- hddata %>%
  select(indicator_name:last_col()) %>% #eliminamos les primeras dos columnas
  pivot_longer(`1990`:`9999`, "year", "value", values_drop_na = TRUE) %>% #creamos la variable year
  filter(year != 9999) %>% #eliminamos el valor 9999
  spread(indicator_name, value) %>% #ponemos los valores de 'indicator_name' como variables 
  clean_names("snake") %>% #simplificamos los nombres de variables
  mutate(year = as.numeric(year)) #pasamos los años a vector numérico
Table 2: Primeras observaciones del marco de datos hddata_tidy
iso3country_nameyearadjusted_net_savings_percent_of_gniadolescent_birth_rate_births_per_1_000_women_ages_15_19antenatal_care_coverage_at_least_one_visit_percentcarbon_dioxide_emissions_kg_per_2011_ppp_of_gdpcarbon_dioxide_emissions_per_capita_tonnescoefficient_of_human_inequalityconcentration_index_exports_valuecontraceptive_prevalence_any_method_percent_of_married_or_in_union_women_of_reproductive_age_15_49_yearscurrent_health_expenditure_percent_of_gdpdomestic_credit_provided_by_financial_sector_percent_of_gdpeducation_indexemployment_in_agriculture_percent_of_total_employmentemployment_in_services_percent_of_total_employmentemployment_to_population_ratio_percent_ages_15_and_olderestimated_gross_national_income_per_capita_female_2011_pppestimated_gross_national_income_per_capita_male_2011_pppexpected_years_of_schooling_yearsexpected_years_of_schooling_female_yearsexpected_years_of_schooling_male_yearsexports_and_imports_percent_of_gdpfemale_share_of_employment_in_senior_and_middle_management_percentforeign_direct_investment_net_inflows_percent_of_gdpforest_area_percent_of_total_land_areafossil_fuel_energy_consumption_percent_of_total_energy_consumptionfresh_water_withdrawals_percent_of_total_renewable_water_resourcesgdp_per_capita_2011_pppgender_development_index_gdigender_inequality_index_giigovernment_expenditure_on_education_percent_of_gdpgross_capital_formation_percent_of_gdpgross_domestic_product_gdp_total_2011_ppp_billionsgross_enrolment_ratio_pre_primary_percent_of_preschool_age_childrengross_enrolment_ratio_primary_percent_of_primary_school_age_populationgross_enrolment_ratio_secondary_percent_of_secondary_school_age_populationgross_enrolment_ratio_tertiary_percent_of_tertiary_school_age_populationgross_fixed_capital_formation_percent_of_gdpgross_national_income_gni_per_capita_2011_ppphdi_rankhiv_prevalence_adult_percent_ages_15_49homicide_rate_per_100_000_peoplehuman_development_index_hdihuman_development_index_hdi_femalehuman_development_index_hdi_maleincome_indexinequality_in_education_percentinequality_in_income_percentinequality_in_life_expectancy_percentinequality_adjusted_education_indexinequality_adjusted_hdi_ihdiinequality_adjusted_income_indexinequality_adjusted_life_expectancy_indexinfants_lacking_immunization_dpt_percent_of_one_year_oldsinfants_lacking_immunization_measles_percent_of_one_year_oldsinternational_inbound_tourists_thousandsinternational_student_mobility_percent_of_total_tertiary_enrolmentinternet_users_total_percent_of_populationlabour_force_participation_rate_percent_ages_15_and_olderlabour_force_participation_rate_percent_ages_15_and_older_femalelabour_force_participation_rate_percent_ages_15_and_older_malelife_expectancy_at_birth_yearslife_expectancy_at_birth_female_yearslife_expectancy_at_birth_male_yearslife_expectancy_indexliteracy_rate_adult_percent_ages_15_and_oldermalaria_incidence_per_1_000_people_at_riskmandatory_paid_maternity_leave_daysmaternal_mortality_ratio_deaths_per_100_000_live_birthsmean_years_of_schooling_yearsmean_years_of_schooling_female_yearsmean_years_of_schooling_male_yearsmedian_age_yearsmobile_phone_subscriptions_per_100_peoplemortality_rate_attributed_to_household_and_ambient_air_pollution_per_100_000_populationmortality_rate_attributed_to_unsafe_water_sanitation_and_hygiene_services_per_100_000_populationmortality_rate_female_adult_per_1_000_peoplemortality_rate_infant_per_1_000_live_birthsmortality_rate_male_adult_per_1_000_peoplemortality_rate_under_five_per_1_000_live_birthsmpi_2018_contribution_of_educationmpi_2018_contribution_of_healthmpi_2018_contribution_of_standard_of_livingmultidimensional_poverty_index_mpinet_migration_rate_per_1_000_peoplenet_official_development_assistance_received_percent_of_gniold_age_65_and_older_dependency_ratio_per_100_people_ages_15_64overall_loss_in_hdi_due_to_inequality_percentpopulation_ages_15_64_millionspopulation_ages_65_and_older_millionspopulation_in_multidimensional_poverty_headcount_percentpopulation_in_multidimensional_poverty_headcount_thousands_for_the_year_of_the_surveypopulation_in_multidimensional_poverty_headcount_thousands_projection_for_2016population_in_multidimensional_poverty_intensity_of_deprivation_percentpopulation_in_severe_multidimensional_poverty_percentpopulation_under_age_5_millionspopulation_using_improved_drinking_water_sources_percentpopulation_using_improved_sanitation_facilities_percentpopulation_vulnerable_to_multidimensional_poverty_percentpopulation_with_at_least_some_secondary_education_percent_ages_25_and_olderpopulation_with_at_least_some_secondary_education_female_percent_ages_25_and_olderpopulation_with_at_least_some_secondary_education_male_percent_ages_25_and_olderprimary_school_dropout_rate_percent_of_primary_school_cohortprimary_school_teachers_trained_to_teach_percentprivate_capital_flows_percent_of_gdpprogramme_for_international_student_assessment_pisa_score_in_mathematicsprogramme_for_international_student_assessment_pisa_score_in_readingprogramme_for_international_student_assessment_pisa_score_in_scienceproportion_of_births_attended_by_skilled_health_personnel_percentpupil_teacher_ratio_primary_school_pupils_per_teacherratio_of_education_and_health_expenditure_to_military_expenditurered_list_index_valuerefugees_by_country_of_origin_thousandsremittances_inflows_percent_of_gdprenewable_energy_consumption_percent_of_total_final_energy_consumptionresearch_and_development_expenditure_percent_of_gdprural_population_with_access_to_electricity_percentsex_ratio_at_birth_male_to_female_birthsshare_of_employment_in_nonagriculture_female_percent_of_total_employment_in_nonagricultureshare_of_seats_in_parliament_percent_held_by_womenskilled_labour_force_percent_of_labour_forcesuicide_rate_female_per_100_000_peoplesuicide_rate_male_per_100_000_peoplesurvival_rate_to_the_last_grade_of_lower_secondary_general_education_percenttotal_debt_service_percent_of_exports_of_goods_services_and_primary_incometotal_population_millionstotal_unemployment_rate_female_to_male_ratiotuberculosis_incidence_per_100_000_peopleunemployment_total_percent_of_labour_forceunemployment_youth_percent_ages_15_24unmet_need_for_family_planning_percent_of_married_or_in_union_women_of_reproductive_age_15_49_yearsurban_population_percentvulnerable_employment_percent_of_total_employmentwomen_with_account_at_financial_institution_or_with_mobile_money_service_provider_percent_of_female_population_ages_15_and_olderworking_poor_at_ppp_3_10_a_day_percent_of_total_employmentyoung_age_0_14_dependency_ratio_per_100_people_ages_15_64youth_not_in_school_or_employment_percent_ages_15_24youth_unemployment_rate_female_to_male_ratio
AFGAfghanistan1990NA161.2NANA0.2NANANANANA0.122NANANANANA2.6NANANANANA2.1NANANANANANANANANA30112NANANA0.1NANANANANANANANANANANANA5080NANANA51.414.886.749.950.948.90.459NANANA13401.50.42.515.9NANANA348120.2396177.3NANANANA-24.7NA4.4NA6.10.3NANANANANA2.4NANANA8.22.313.6NANANANANANANA41NANANANA15.9NANA1.06NANANANANANANA12.2NANANANANA21.2NANANA96.6NANA
AFGAfghanistan1991NANANANANANANANANANA0.13371.322.245.3NANA2.9NANANANANANANANANANANANANANANANANANANANANA0.1NANANANANANANANANANANANA5381NANANANANANA50.651.749.60.471NANANANA1.60.52.6NANANANA340116.4387171.1NANANANANANA4.5NA6.50.3NANANANANA2.5NANANANA2.514.0NANANANANANANANANANANANANANANANA9.3NANANANANANA13.01.26NA12.025.6NA21.362.0NA98.996.5NA1.01
AFGAfghanistan1992NANANANANANANANANANA0.145NANANANANA3.2NANANANANANANANANANANANANANANANANANANANANA0.1NANANANANANANANANANANANA5578NANANANANANA51.352.450.30.482NANANANA1.60.52.8NANANANA331112.9379165.2NANANANANANA4.5NA7.00.3NANANANANA2.7NANANANA2.814.4NANANANANANANANANANANANANANANANANANANANANANANA14.0NANANANANA21.4NANANA96.4NANA
AFGAfghanistan1993NANANANANANANANANANA0.156NANANANANA3.6NANANANANANANANANANANANANANANANANANANANANA0.1NANANANANANANANANANANANA5975NANANANANANA52.053.150.90.492NANANANA1.70.52.9NANANANA326109.5373159.6NANANANANANA4.5NA7.50.3NANANANANA2.9NANANANA3.014.9NANANANANANANANANA0.841NANANANANANANANANANANANANA15.1NANANANANA21.4NANANA96.4NANA
AFGAfghanistan1994NANANANANANANANANANA0.168NANANANANA3.9NANANANANANANANANANANANANANANANANANANANANA0.1NANANANANANANANANANANANA6760NANANANANANA52.553.651.50.501NANANANA1.80.63.1NANANANA321106.3368154.5NANANANANANA4.6NA8.10.4NANANANANA3.2NANANANA3.215.3NANANANANANANANANANANANANANANANANANANANANANANA16.2NANANANANA21.5NANANA96.3NANA
AFGAfghanistan1995NA163.9NANA0.1NA0.34NANANA0.17978.717.247.4NANA4.2NANANANANA2.1NANANANANANANANANA4522NANANANA0.1NANANANANANANANANANANANA5659NANANA51.915.086.453.154.252.00.509NANANA12701.90.63.216.0NANANA316103.3363149.6NANANANA31.7NA4.7NA8.50.4NANANANANA3.3NANANA9.83.515.7NANANANANANANANANA0.840NANA35.1NANA1.067.0NANANANANANA17.12.04NA8.717.8NA21.673.7NA99.295.8NA1.11
AFGAfghanistan1996NANANANANANANANANANA0.190NANANANANA4.6NANANANANANANANANANANANANANANANANANANANANA0.1NANANANANANANANANANANANA4458NANANANANANA53.554.752.50.516NANANANA1.90.63.3NANANANA310100.5358145.1NANANANANANA4.7NA8.90.4NANANANANA3.5NANANANA3.715.9NANANANANANANANANANANANANANANANANANANANANANANA17.8NANANANANA21.7NANANA96.6NANA
AFGAfghanistan1997NANANANANANANANANANA0.202NANANANANA4.9NANANANANANANANANANANANANANANANANANANANANA0.1NANANANANANANANANANANANA5262NANANANANANA54.055.252.90.523NANANANA2.00.73.4NANANANA30597.9352141.0NANANANANANA4.7NA9.10.4NANANANANA3.6NANANANA3.916.2NANANANANANANANANANANANANANANANANANANANANANANA18.4NANANANANA21.8NANANA97.4NANA

Practica 2. Exploración inicial: Examinad el marco de datos tecleando hddata_tidy y visualizad la estructura con glimpse(hddata_tidy).

  1. ¿Cuántas variables y cuántas observaciones contiene el marco de datos?
  2. ¿Cuál es la unidad de análisis?
  3. Visualizad la lista de variables con la función names(hddata_tidy). ¿Sabríais intuir cuáles de estas variables conforman el IDH?
  4. Observad el resto de variables. ¿Qué otras podrían ilustrar el concepto de desarrollo humano?
  5. ¿De qué países tenemos más datos perdidos? Utilizad el siguiente código para averiguarlo.
hddata %>%
  pivot_longer(`1990`:`9999`, "year", "value") %>%
  group_by(country_name) %>% #agrupamos los datos por país
  summarize(na = sum(is.na(value))) %>%
  arrange(desc(na))
  1. ¿De qué indicadores tenemos más datos perdidos? Utilizad el siguiente código para averiguarlo.
hddata %>%
  pivot_longer(`1990`:`9999`, "year", "value") %>%
  group_by(indicator_name) %>% #agrupamos los datos por indicador
  summarize(na = sum(is.na(value))) %>%
  arrange(desc(na))
  1. ¿Cómo creéis que podrían influir los datos que tenemos disponibles en la selección de indicadores para construir una medida como el IDH?

Podéis ver que el marco de datos hddata_tidy contiene muchas variables que no necesitamos. Una de las primeras cosas que tenemos que hacer es simplificarlo para que tenga unas dimensiones más reducidas a fin de poder trabajarlo mejor a la hora de construir el IDH. Para tal propósito, hemos creado el nuevo marco de datos hdi, que filtra los datos por el año más actual, mantiene solo algunas variables y ordena los países según su IDH en 2017, el último año del que tenemos datos disponibles. Hemos dejado dos variables principales: países (country) e IDH (IDH). Y a continuación también hemos conservado las variables que conforman el IDH. A todas les hemos dado un nombre más simple:

  • Al ingreso nacional bruto per cápita (gross_national_income_gni_por_capita_2011_ppp) lo llamaremos GNI.
  • A los años de escolarización esperados (expected_years_of_schooling_years) los llamaremos E1.
  • A la media de años de escolarización (mean_years_of_schooling_years) la llamaremos E2.
  • Y a la esperanza de vida al nacer (life_expectancy_at_birth_years) la llamaremos LE.

Además, hemos usado el paquete countrycode para poner los nombres del marco de datos en castellano (ver Normas ISO).

#cambiad hdi por hdi_prueba cuando hagáis las modificaciones
#Nota: No os preocupéis por los warnings que aparecen en la consola
hdi <- hddata_tidy %>% #marco de datos
  filter(year == max(year)) %>% #filtramos por el año más alto
  arrange(desc(human_development_index_hdi)) %>% #ordenamos por la variable idh
  transmute(P = 1:n(), #creamos una variable con la posición del país
            country = countrycode(country_name, "country.name.en", "cldr.name.es"), 
            IDH = human_development_index_hdi,
            GNI = gross_national_income_gni_per_capita_2011_ppp,
            E1 = expected_years_of_schooling_years,
            E2 = mean_years_of_schooling_years,
            LE = life_expectancy_at_birth_years) %>%
  filter(IDH != is.na(IDH)) #eliminamos las observaciones con NA

#Llenamos los NA. A partir de 1 de junio de 2018 Suazilandia pasa a llamarse Reino de Esuatini.
hdi$country[which(is.na(hdi$country))] <- c("Micronesia", "Reino de Esuatini")

Practica 3. Creación de un nuevo marco de datos: fijaos en el código que hemos utilizado para crear el objeto hdi y probad a hacerle algunas modificaciones. Antes que nada, sustituid el código hdi por hdi_prueba para guardar los cambios con el nombre de otro objeto.

  1. Filtrad por algún otro año en lugar de 2017. Habrá que sustituir max(year) por el año en cuestión.
  2. Ordenad los datos por alguna otra columna que no sea la columna IDH dentro de la función arrange().
  3. Conservad la variable country y seleccionad variables diferentes a las que hemos escogido, indicando un nombre nuevo para cada una de ellas.

El IDH: vista previa

En la Tabla 3, observamos el resultado de head(hdi, 10), que muestra los países mejor clasificados en el ranking del IDH en 2017. En primer lugar, encontramos Noruega, con un IDH de 0.953, seguida de Suiza, Australia y Irlanda. Todos estos países tienen cifras muy altas en sus indicadores: un GNI per cápita alto (columna GNI), unos años de educación esperada elevados (columna E1), una media de años en la escuela elevada (columna E2) y una esperanza de vida alta (columna LE).

Table 3: Primeros diez lugares del ranking del IDH en 2017
PcountryIDHGNIE1E2LE
1Noruega0.9536801217.912.682.3
2Suiza0.9445762516.213.483.5
3Australia0.9394356022.912.983.1
4Irlanda0.9385375419.612.581.6
5Alemania0.9364613617.014.181.2
6Islandia0.9354581019.312.482.9
7RAE de Hong Kong (China)0.9335842016.312.084.1
8Suecia0.9334776617.612.482.6
9Singapur0.9328250316.211.583.2
10Países Bajos0.9314790018.012.282.0

En cambio, en la parte inferior de la tabla nos encontramos lo contrario, como vemos en la Tabla 4, mediante el código tail(hdi, 10). Todos los países con valores bajos en su IDH tienen un GNI bajo, unos niveles de educación inferiores y una esperanza de vida baja. Níger es el último país de la lista. Tiene un GNI inferior a los 1.000 dólares/año, los jóvenes del país pasan muy pocos años en la escuela y la población vive de media poco más de sesenta años.

Table 4: Últimos diez lugares del ranking del IDH en 2017
PcountryIDHGNIE1E2LE
180Mozambique0.43710939.73.558.9
181Liberia0.43566710.04.763.0
182Mali0.42719537.72.358.5
183Burkina Faso0.42316508.51.560.8
184Sierra Leona0.41912409.83.552.2
185Burundi0.41770211.73.057.9
186Chad0.40417508.02.353.2
187Sudán del Sur0.3889634.94.857.3
188República Centroafricana0.3676637.24.352.9
189Níger0.3549065.42.060.4

Practica 4. Búsqueda de países: visualizad el principio de la tabla con head(), el final de la tabla con tail() o cualquier fragmento de la tabla con la función slice(). Por ejemplo, tecleando slice(hdi, 30:40) visualizaremos de la trigésima a la cuadragésima observación del ranking. Responded a las siguientes preguntas:

  1. ¿Cuál es el país con mayor esperanza de vida?
  2. ¿Cuál es el país con una media inferior de años de escolarización?
  3. ¿Cuál es el país con el ingreso nacional bruto per cápita más bajo?
  4. Buscad la posición de España, Japón y Palestina. También podéis buscarla con:
hdi[which(hdi$country == "Nombre del país"),]
  1. Observad la distribución de la esperanza de vida con un histograma mediante hist(hdi$LE). ¿En qué franja hay más países? Haced lo mismo con el GNI. ¿En qué franja de ingresos se encuentran más países?

Referencias

Mas, Jordi. 2020. Les mesures compostes.” Barcelona: FUOC.
Sen, Amartya. 1981. Public Action and the Quality of Life in Developing Countries.” Oxford Bulletin of Economics and Statistics 43 (4): 287–319.
———. 1985. Commodities and Capabilities. Amsterdam: North Holland.
UNDP. 1990. Human Development Report.” New York: United Nations Development Programme.
———. 2018. Human Development Report.” New York: United Nations Development Programme.
Wickham, Hadley. 2014. Tidy Data.” Journal of Statistical Software 50 (10): 1–23.
Previous
Next