Fundamentos de la Investigación Científica/ Estadística Descriptiva vs Estadística Inferencial

POSFACE

Dr. Roberto Chang López/ rchang@unah.edu.hn/ Consultor DataScience https://socialreflexionsbyrobertochanglopezphd.wordpress.com/ (UNAH/FUNIBER/UNINTER MÉXICO /UTH /MIT/COLUMBIA/ WORLD HEALTH ORGANIZATION (WHO))
2023-04-13

Fuente:https://manometcurrent.com/

#Primeros pasos instalación de R Base y Rstudio.

  1. Instalación de R Base Haga Click en el siguiente Vínculo

https://cran.r-project.org/bin/windows/base/

Revisar que su Windows es de 32 o 64 bits.

R-4.1.1 for Windows c Download R 4.1.1 for Windows (86 megabytes, 32/64 bit)

Para determinar si mi PC es (86 megabytes, 32/64 bit) seleccione el botón Inicio y, a continuación, seleccione configuración> sistema> acerca de . Abrir información sobre la configuración. A la derecha, en Especificaciones del dispositivo, consulta Tipo de sistema.

Dependiendo del Window de su PC, 7,8 o 10, haga click en el siguiente link:

https://support.microsoft.com/es-es/windows/windows-de-32-y-64-bits-preguntas-frecuentes-c6ca9541-8dce-4d48-0415-94a3faa2e13d

  1. Para instalar R Studio haga click en el siguiente vínculo y seleccione la versión gratis.

https://www.rstudio.com/products/rstudio/download/

  1. Puede utilizar rstudiocloud y registrarse con su cuenta de google en el siguiente Link, en el caso de que no quiera utilizar la capacidad de su pc:

https://login.rstudio.cloud/

##Repaso de Estadística para la Investigación Científica / Ciencia de Datos

#Tipos de Variables:

#Grupo de variables cualitativas

  1. Categórica/ factor/Nominal <- nombre, id, producto, tipo de animal, rama de actividad económicas, en otras palabras etiquetas.

Dentro de estás variables encontramos las dicotómicas (HOMBRE/ MUJER) (EMPLEADO/ DESEMPLEADO) (ENFERMO/ NO ENFERMO). En ninguno de los casos hay alguna importancia en el orden.

  1. Categórica/ factor/ Ordinal. Donde a parte de tener una etiqueta, cada una de ella tiene un orden que importa en la investigación, por ejemplo, educación: primaria, secundaria, universidad, maestría, doctorado. Calidad: baja, media, alta, contestar una pregunta en escala de Likert donde 1 es menos importante y 5 más importante (Al menos que se transforme, sumando o promediando).

#Grupo de variables cuantitativas

  1. Intervalos, diferentes intervalos y cada uno tiene es precedente del anterior, el cero es siempre es un punto de referencia en R o en los reales a la n. Ejemplo, temperaturas.

  2. Continuas (Razón) e incluso algunas discretas(No deben ser etiquetas), porcentajes, razones financieras, razones entre peso y altura, número de hijos, edad, muertes por cada 100,000 habitantes

##Principales características de la Ciencia

1.Replicable 2.Reproducible 3. Da respuesta a un planteamiento del problema:

Kerliger de la California State University (1988, p.22) Libro en español https://padron.entretemas.com.ve/INICC2018-2/lecturas/u2/kerlinger-investigacion.pdf

La ciencia siempre busca medir y responder una pregunta de investigación, pero esta medición debe ser replicable y reproducible.

Los problemas de investigación se formulan desde la perspectiva teórica o del vacio en el conocimiento o desde los datos empíricos, pero NUNCA SE FORMULA UNA PREGUNTA DE INVESTIGACIÓN DESDE LA CREENCIA Y PERCEPCIÓN DEL INVESTIGACDOR, porque la investigación se vuelve SUBJETIVA y el problema no es científico, sino MENTAL.

Ejemplo de problemas. ¿Cómo contengo el COVID-19?¿Cómo disminuyo el riesgo de que mi familia se contagie?¿Cómo puede mi empresa ser más productiva o competitiva?

En todos estos casos, la data empírica esta presente y es importante para formular un problema de investigación, por ejemplo, el incremento de los casos de COVID, la disminución de la producción o ventas de la empresa.

#¿Qué es ciencia, pseudociencia y tecnología y ¿cómo se diferencian?

https://socialreflexionsbyrobertochanglopezphd.wordpress.com/2016/10/28/el-gran-enigma-de-la-pregunta-paradigmatica-que-necesitan-las-organizaciones-publicas-y-privadas-en-general-para-mejorar-sus-resultados-naturalidad-o-administracion-c/

Ejemplos de problemas de investigación

#¿Cuál es el impacto de la educación de los empleados y los años de experiencia en la rentabilidad de la empresa?

Variables: Dependiente : Y <-rentabilidad de la empresa

Variables independientes / covariables o variables explicativas:

x1: educación de los empleados

x2: ños de experiencia

Matemáticamente se puede formular esta pregunta de la siguiente manera:

Y = Bo + x1 + x2+ E

#¿cómo se evaluan estos modelos?

El modelo general con el estadístico F y su respectivo p valor que debe ser menor que 0.05.

Y cada variable con su estadístico t y su respectivo p valor que debe ser menor que 0.05.

#Análisis de los residuos

Previamente, se debe realizar análisis de normalidad y homocedasticidad y transformación de variables.

Otra pregunta de investigación para un análisis correlacional pero no es CAUSAL y que no es para doctorado, sino para tesis de maestría podría ser.

#¿Existe relación entre el nivel de educación años de experiencia y la rentabilidad de la empresa?

Esta pregunta no es causal y no se puede determinar ningún efecto o impacto y no existen variables dependientes.

#Variables independientes o covariables:

x1: educación de los empleados

x2: años de experiencia x3: rentabilidad de la empresa

Este tipo de pregunta se contesta o responde con correlaciones de Pearson, Spearman o Tau de Kendall pero con sus respectivos p valores.

#Dos tipos de estadística

  1. Descriptiva, la cual es un análisis exploratorio y no sirve para sacar conclusiones o inferencias de la población.

Algunos ejemplos EDA:

1.1 La media, 1.2 La desviación estandar 1.3 La varianza. 1.4 Frecuencia 1.4 Histogramas, gráficos de densidad. 1.5 Boxplots 1.5 Correlaciones 1.6 Normalidad 1.7 Homocedasticidad. 1.8 Análisis de Clústers 1.9 Análisis Factorial 1.10 Dendogramas 1.11 entre otros

  1. Inferencial

Algunos ejemplos:

Experimental y NO Experimental/ Paramétrica y No Paramétrica

1.Prueba de hipótesis binomial, hipergeométrica, multinomial, t student, normal, multinormal, entre otras. Modelos ANOVA, MANOVA, Kruskall Wallis Prueba de Friedman, Prueba McNemar, Prueba de la Mediana, entre otras.

  1. Regresión simple, multivariada, logísticas, poisson,factoriales entre otras.

  2. Series de tiempo estacionales y no estacionales, así como series de tiempo multivariables.

  3. Otras en función a la complejidad de la pregunta de investigación.

[

Fuente: infodiagram.

#Repaso de Estadística Descriptiva

En el siguiente link está disponible la base de datos con la que trabajaremos. Kaggle es un sitio a nivel internacional donde se comparten base de datos para análisis estadísticos, Machine Learning u otros propósitos.

https://www.kaggle.com/babyoda/women-entrepreneurship-and-labor-force?select=Dataset3.csv

library(DT)
library(data.table)
base_de_datos<- fread("Dataset3.csv", header= T)

Viendo las primeros 5 filas con el comando head ()

head(base_de_datos)
   No Country Level of development European Union Membership Currency
1:  4 Austria            Developed                    Member     Euro
2:  6 Belgium            Developed                    Member     Euro
3: 17 Estonia            Developed                    Member     Euro
4: 18 Finland            Developed                    Member     Euro
5: 19  France            Developed                    Member     Euro
6: 20 Germany            Developed                    Member     Euro
   Women Entrepreneurship Index Entrepreneurship Index Inflation rate
1:                         54.9                   64.9           0.90
2:                         63.6                   65.5           0.60
3:                         55.4                   60.2          -0.88
4:                         66.4                   65.7          -0.20
5:                         68.8                   67.3           0.00
6:                         63.6                   67.4           0.50
   Female Labor Force Participation Rate
1:                                  67.1
2:                                  58.0
3:                                  68.5
4:                                  67.7
5:                                  60.6
6:                                  69.9
#library(writexl)
#write_xlsx(base_de_datos_1, "C:/Users/ladylee/Desktop/base_unah.xlsx")

Ahora pasaremos ¿cuáles son los tipos de variables que tenemos con el comando str()

str(base_de_datos)
Classes 'data.table' and 'data.frame':  51 obs. of  9 variables:
 $ No                                   : int  4 6 17 18 19 20 22 28 30 34 ...
 $ Country                              : chr  "Austria" "Belgium" "Estonia" "Finland" ...
 $ Level of development                 : chr  "Developed" "Developed" "Developed" "Developed" ...
 $ European Union Membership            : chr  "Member" "Member" "Member" "Member" ...
 $ Currency                             : chr  "Euro" "Euro" "Euro" "Euro" ...
 $ Women Entrepreneurship Index         : num  54.9 63.6 55.4 66.4 68.8 63.6 43 64.3 51.4 56.6 ...
 $ Entrepreneurship Index               : num  64.9 65.5 60.2 65.7 67.3 67.4 42 65.3 41.3 54.5 ...
 $ Inflation rate                       : num  0.9 0.6 -0.88 -0.2 0 0.5 -1.7 -0.3 0 0.2 ...
 $ Female Labor Force Participation Rate: num  67.1 58 68.5 67.7 60.6 69.9 42.5 59.4 47.2 66.4 ...
 - attr(*, ".internal.selfref")=<externalptr> 

En esta estructura de datos o tipos de datos, en los programas estadísticos las variables nominales deben ser definidas como factores y no como “Character” o Tipo de “Texto”, al menos útil para otros tipos de análisis de Machine Learning No Supervisado.

Entonces procederemos a transforma los valores de esta variable a nominal o etiquetas y no como letras o “Character”.

base_de_datos$Country<- as.factor(base_de_datos$Country)
str(base_de_datos$Country)
 Factor w/ 51 levels "Algeria","Argentina",..: 4 5 16 17 18 19 21 25 26 29 ...

Ahora vemos que hay data de 51 países

base_de_datos$`Level of development`<- as.factor(base_de_datos$`Level of development`)

str(base_de_datos$`Level of development`)
 Factor w/ 2 levels "Developed","Developing": 1 1 1 1 1 1 1 1 1 1 ...
unique(base_de_datos$Country)
 [1] Austria                Belgium               
 [3] Estonia                Finland               
 [5] France                 Germany               
 [7] Greece                 Ireland               
 [9] Italy                  Latvia                
[11] Lithuania              Netherlands           
[13] Slovakia               Slovenia              
[15] Spain                  Croatia               
[17] Denmark                Hungary               
[19] Poland                 Sweden                
[21] Australia              Iceland               
[23] Japan                  Norway                
[25] Singapore              Switzerland           
[27] Taiwan                 Algeria               
[29] Argentina              Bolivia               
[31] Bosnia and Herzegovina Brazil                
[33] China                  Costa Rica            
[35] Ecuador                Egypt                 
[37] El Salvador            Ghana                 
[39] India                  Jamaica               
[41] Macedonia              Malaysia              
[43] Mexico                 Panama                
[45] Peru                   Russia                
[47] Saudi Arabia           Thailand              
[49] Tunisia                Turkey                
[51] Uruguay               
51 Levels: Algeria Argentina Australia Austria Belgium ... Uruguay
library(tidyverse)
base_de_datos %>% group_by(`Level of development`) %>% summarise(Total = n())
# A tibble: 2 x 2
  `Level of development` Total
  <fct>                  <int>
1 Developed                 27
2 Developing                24

Ahora revisar los valores faltantes o missing values.

En este caso, no tenemos valores faltantes.

#Podriamos buscar con valores booleaos TRUE or FALSE, missing values con la siguiente función por cada columna o una columna en particular.

is.na(base_de_datos)

sum(is.na(base_de_datos))
[1] 0

La limpieza de datos, que es una de los roles más difícil antes de realizar análisis estadísticos. También incluye revisar si hay valores duplicados o si los outliers tienen un efecto en el modelo que estamos evaluando.

# obtener los valores no duplicados por No
#distinct(base_de_datos_1, No)

Vemos en que este dataset también podemos utilizar el comando unique () para ver si hay no países repetidos

#unique(base_de_datos_1$No)
#duplicated(base_de_datos_1)

No hay valores duplicados, pero en el caso que quisieramos elimiarlos del dataset, podemos utilizar el comando distinct ()

nrow(datos[duplicated(datos), ]) <- nos sirve para contar los duplicados y para seleccionar

datos[duplicated(datos),

#TODOS ESTOS PASOS Y COMANDOS NO SE PUEDEN OBVIAR PORQUE LOS RESULTADOS DE LA CIENCIA SON REPLICABLES Y REPRODUCIBLES, EN OTRAS PALABRAS, SUS PARES LO PUEDEN REVISAR Y CORROBORAR.

En ese sentido, debemos quitar los NAs o valores faltantes o en su defecto rellenar los valores faltantes con los promedios de los demás valores, simplemente con ceros (0)s.

Cuando una columna o variable tiene mas de 20% de NAs, debe eliminarse esa variable en el estudio.

sum(is.na(base_de datos)) / length(x)

sum(is.na(base_de_datos)) / length(base_de_datos)
[1] 0
# Otra estrategia con el mismo resultado es:

mean(is.na(base_de_datos))
[1] 0

TODAVIA ESTAMOS EN EL ANÁLISIS EXPLORATORIO Y DESCRIPTIVO

Revisemos las estadísticas descriptivas de la base de datos con summary

summary(base_de_datos)
       No             Country   Level of development
 Min.   : 1.00   Algeria  : 1   Developed :27       
 1st Qu.:14.50   Argentina: 1   Developing:24       
 Median :30.00   Australia: 1                       
 Mean   :29.98   Austria  : 1                       
 3rd Qu.:45.50   Belgium  : 1                       
 Max.   :60.00   Bolivia  : 1                       
                 (Other)  :45                       
 European Union Membership   Currency        
 Length:51                 Length:51         
 Class :character          Class :character  
 Mode  :character          Mode  :character  
                                             
                                             
                                             
                                             
 Women Entrepreneurship Index Entrepreneurship Index Inflation rate  
 Min.   :25.30                Min.   :24.80          Min.   :-2.250  
 1st Qu.:36.35                1st Qu.:31.90          1st Qu.:-0.500  
 Median :44.50                Median :42.70          Median : 0.600  
 Mean   :47.84                Mean   :47.24          Mean   : 2.588  
 3rd Qu.:59.15                3rd Qu.:65.40          3rd Qu.: 3.600  
 Max.   :74.80                Max.   :77.60          Max.   :26.500  
                                                                     
 Female Labor Force Participation Rate
 Min.   :13.00                        
 1st Qu.:55.80                        
 Median :61.00                        
 Mean   :58.48                        
 3rd Qu.:67.40                        
 Max.   :82.30                        
                                      
base_de_datos$`European Union Membership`<- as.factor(base_de_datos$`European Union Membership`)
base_de_datos$`Level of development`<- as.factor(base_de_datos$`Level of development`)

str(base_de_datos$`European Union Membership`)
 Factor w/ 2 levels "Member","Not Member": 1 1 1 1 1 1 1 1 1 1 ...
str(base_de_datos$`Level of development`)
 Factor w/ 2 levels "Developed","Developing": 1 1 1 1 1 1 1 1 1 1 ...

##Manipulación de datos

Cambio de nombre de las variables con la libreria o paquete Tidyverse.

names(base_de_datos)
[1] "No"                                   
[2] "Country"                              
[3] "Level of development"                 
[4] "European Union Membership"            
[5] "Currency"                             
[6] "Women Entrepreneurship Index"         
[7] "Entrepreneurship Index"               
[8] "Inflation rate"                       
[9] "Female Labor Force Participation Rate"
library (tidyverse)
base_de_datos_1<- as.data.table(base_de_datos) %>% 
rename("Miembro_UE" = `European Union Membership`, "País" = Country, "Moneda" = "Currency")

head(base_de_datos_1)
   No    País Level of development Miembro_UE Moneda
1:  4 Austria            Developed     Member   Euro
2:  6 Belgium            Developed     Member   Euro
3: 17 Estonia            Developed     Member   Euro
4: 18 Finland            Developed     Member   Euro
5: 19  France            Developed     Member   Euro
6: 20 Germany            Developed     Member   Euro
   Women Entrepreneurship Index Entrepreneurship Index Inflation rate
1:                         54.9                   64.9           0.90
2:                         63.6                   65.5           0.60
3:                         55.4                   60.2          -0.88
4:                         66.4                   65.7          -0.20
5:                         68.8                   67.3           0.00
6:                         63.6                   67.4           0.50
   Female Labor Force Participation Rate
1:                                  67.1
2:                                  58.0
3:                                  68.5
4:                                  67.7
5:                                  60.6
6:                                  69.9

Sigamos con Manipulación y exploración de data

base_de_datos_1 %>% group_by(Miembro_UE, "Level of development" )
# A tibble: 51 x 10
# Groups:   Miembro_UE, "Level of development" [2]
      No País   Level~1 Miemb~2 Moneda Women~3 Entre~4 Infla~5 Femal~6
   <int> <fct>  <fct>   <fct>   <chr>    <dbl>   <dbl>   <dbl>   <dbl>
 1     4 Austr~ Develo~ Member  Euro      54.9    64.9    0.9     67.1
 2     6 Belgi~ Develo~ Member  Euro      63.6    65.5    0.6     58  
 3    17 Eston~ Develo~ Member  Euro      55.4    60.2   -0.88    68.5
 4    18 Finla~ Develo~ Member  Euro      66.4    65.7   -0.2     67.7
 5    19 France Develo~ Member  Euro      68.8    67.3    0       60.6
 6    20 Germa~ Develo~ Member  Euro      63.6    67.4    0.5     69.9
 7    22 Greece Develo~ Member  Euro      43      42     -1.7     42.5
 8    28 Irela~ Develo~ Member  Euro      64.3    65.3   -0.3     59.4
 9    30 Italy  Develo~ Member  Euro      51.4    41.3    0       47.2
10    34 Latvia Develo~ Member  Euro      56.6    54.5    0.2     66.4
# ... with 41 more rows, 1 more variable:
#   `"Level of development"` <chr>, and abbreviated variable names
#   1: `Level of development`, 2: Miembro_UE,
#   3: `Women Entrepreneurship Index`, 4: `Entrepreneurship Index`,
#   5: `Inflation rate`, 6: `Female Labor Force Participation Rate`
# i Use `print(n = ...)` to see more rows, and `colnames()` to see all variable names

¿Cómo escribo/ guardo este resumen de agrupamiento para formato excel o csv, quite el númeral # en la siguiente línea de código?

#write.csv(base_de_datos_1, "C:/Users/Desktop/Dataset3.csv")

Calculemos o construyamos una nueva variable en el dataset siempre con la libreria Tidyverse, pero ahora con el comando mutate.

Pindex_mujer= Entrepreneurship Index /Women Entrepreneurship Index

    No                   País Level of development Miembro_UE
 1:  4                Austria            Developed     Member
 2:  6                Belgium            Developed     Member
 3: 17                Estonia            Developed     Member
 4: 18                Finland            Developed     Member
 5: 19                 France            Developed     Member
 6: 20                Germany            Developed     Member
 7: 22                 Greece            Developed     Member
 8: 28                Ireland            Developed     Member
 9: 30                  Italy            Developed     Member
10: 34                 Latvia            Developed     Member
11: 35              Lithuania            Developed     Member
12: 39            Netherlands            Developed     Member
13: 50               Slovakia            Developed     Member
14: 51               Slovenia            Developed     Member
15: 53                  Spain            Developed     Member
16: 12                Croatia            Developed     Member
17: 13                Denmark            Developed     Member
18: 24                Hungary            Developed     Member
19: 44                 Poland            Developed     Member
20: 54                 Sweden            Developed     Member
21:  3              Australia            Developed Not Member
22: 25                Iceland            Developed Not Member
23: 32                  Japan            Developed Not Member
24: 40                 Norway            Developed Not Member
25: 49              Singapore            Developed Not Member
26: 55            Switzerland            Developed Not Member
27: 56                 Taiwan            Developed Not Member
28:  1                Algeria           Developing Not Member
29:  2              Argentina           Developing Not Member
30:  7                Bolivia           Developing Not Member
31:  8 Bosnia and Herzegovina           Developing Not Member
32:  9                 Brazil           Developing Not Member
33: 10                  China           Developing Not Member
34: 11             Costa Rica           Developing Not Member
35: 14                Ecuador           Developing Not Member
36: 15                  Egypt           Developing Not Member
37: 16            El Salvador           Developing Not Member
38: 21                  Ghana           Developing Not Member
39: 26                  India           Developing Not Member
40: 31                Jamaica           Developing Not Member
41: 36              Macedonia           Developing Not Member
42: 37               Malaysia           Developing Not Member
43: 38                 Mexico           Developing Not Member
44: 42                 Panama           Developing Not Member
45: 43                   Peru           Developing Not Member
46: 47                 Russia           Developing Not Member
47: 48           Saudi Arabia           Developing Not Member
48: 57               Thailand           Developing Not Member
49: 58                Tunisia           Developing Not Member
50: 59                 Turkey           Developing Not Member
51: 60                Uruguay           Developing Not Member
    No                   País Level of development Miembro_UE
               Moneda Women Entrepreneurship Index
 1:              Euro                         54.9
 2:              Euro                         63.6
 3:              Euro                         55.4
 4:              Euro                         66.4
 5:              Euro                         68.8
 6:              Euro                         63.6
 7:              Euro                         43.0
 8:              Euro                         64.3
 9:              Euro                         51.4
10:              Euro                         56.6
11:              Euro                         58.5
12:              Euro                         69.3
13:              Euro                         54.8
14:              Euro                         55.9
15:              Euro                         52.5
16: National Currency                         49.9
17: National Currency                         69.7
18: National Currency                         53.7
19: National Currency                         57.7
20: National Currency                         66.7
21: National Currency                         74.8
22: National Currency                         68.0
23: National Currency                         40.0
24: National Currency                         66.3
25: National Currency                         59.8
26: National Currency                         63.7
27: National Currency                         53.4
28: National Currency                         27.4
29: National Currency                         35.7
30: National Currency                         29.7
31: National Currency                         31.6
32: National Currency                         31.1
33: National Currency                         38.3
34: National Currency                         36.1
35: National Currency                         32.3
36: National Currency                         27.7
37: National Currency                         29.9
38: National Currency                         25.8
39: National Currency                         25.3
40: National Currency                         38.6
41: National Currency                         41.2
42: National Currency                         39.2
43: National Currency                         42.8
44: National Currency                         36.9
45: National Currency                         43.6
46: National Currency                         35.6
47: National Currency                         37.0
48: National Currency                         36.6
49: National Currency                         30.7
50: National Currency                         39.3
51: National Currency                         44.5
               Moneda Women Entrepreneurship Index
    Entrepreneurship Index Inflation rate
 1:                   64.9           0.90
 2:                   65.5           0.60
 3:                   60.2          -0.88
 4:                   65.7          -0.20
 5:                   67.3           0.00
 6:                   67.4           0.50
 7:                   42.0          -1.70
 8:                   65.3          -0.30
 9:                   41.3           0.00
10:                   54.5           0.20
11:                   54.6          -0.90
12:                   66.5           0.60
13:                   45.4          -0.30
14:                   53.1          -0.50
15:                   49.6          -0.50
16:                   40.6          -0.50
17:                   71.4           0.50
18:                   42.7          -0.10
19:                   47.4          -0.90
20:                   71.8           0.00
21:                   77.6           1.50
22:                   70.4           1.60
23:                   49.5           0.80
24:                   65.6           2.17
25:                   68.1          -0.50
26:                   68.6          -1.10
27:                   69.1          -0.61
28:                   30.2           4.80
29:                   37.2          26.50
30:                   28.0           4.10
31:                   28.9          -1.00
32:                   25.8          10.67
33:                   36.4           1.40
34:                   37.7           0.80
35:                   28.2          -0.50
36:                   28.1          11.00
37:                   29.6          -2.25
38:                   24.8          17.20
39:                   25.3           5.90
40:                   27.2           3.70
41:                   37.1           3.70
42:                   40.0           2.30
43:                   30.7           2.70
44:                   32.2           0.10
45:                   30.9           3.50
46:                   31.7          15.50
47:                   49.6           1.20
48:                   32.1          -0.90
49:                   35.5           4.80
50:                   54.6           7.70
51:                   41.4           8.67
    Entrepreneurship Index Inflation rate
    Female Labor Force Participation Rate Pindex_mujer
 1:                                 67.10    1.1821494
 2:                                 58.00    1.0298742
 3:                                 68.50    1.0866426
 4:                                 67.70    0.9894578
 5:                                 60.60    0.9781977
 6:                                 69.90    1.0597484
 7:                                 42.50    0.9767442
 8:                                 59.40    1.0155521
 9:                                 47.20    0.8035019
10:                                 66.40    0.9628975
11:                                 66.50    0.9333333
12:                                 69.20    0.9595960
13:                                 55.90    0.8284672
14:                                 61.00    0.9499106
15:                                 52.70    0.9447619
16:                                 60.40    0.8136273
17:                                 70.30    1.0243902
18:                                 57.80    0.7951583
19:                                 56.60    0.8214905
20:                                 74.00    1.0764618
21:                                 66.80    1.0374332
22:                                 82.30    1.0352941
23:                                 64.70    1.2375000
24:                                 69.20    0.9894419
25:                                 59.18    1.1387960
26:                                 74.70    1.0769231
27:                                 55.00    1.2940075
28:                                 18.00    1.1021898
29:                                 47.30    1.0420168
30:                                 69.40    0.9427609
31:                                 51.90    0.9145570
32:                                 55.90    0.8295820
33:                                 62.40    0.9503916
34:                                 59.40    1.0443213
35:                                 63.50    0.8730650
36:                                 64.60    1.0144404
37:                                 55.70    0.9899666
38:                                 60.80    0.9612403
39:                                 61.10    1.0000000
40:                                 37.70    0.7046632
41:                                 73.00    0.9004854
42:                                 58.50    1.0204082
43:                                 44.70    0.7172897
44:                                 67.90    0.8726287
45:                                 63.40    0.7087156
46:                                 65.20    0.8904494
47:                                 13.00    1.3405405
48:                                 62.00    0.8770492
49:                                 25.19    1.1563518
50:                                 30.40    1.3893130
51:                                 68.00    0.9303371
    Female Labor Force Participation Rate Pindex_mujer
summary(base_de_datos_1)
       No               País    Level of development      Miembro_UE
 Min.   : 1.00   Algeria  : 1   Developed :27        Member    :20  
 1st Qu.:14.50   Argentina: 1   Developing:24        Not Member:31  
 Median :30.00   Australia: 1                                       
 Mean   :29.98   Austria  : 1                                       
 3rd Qu.:45.50   Belgium  : 1                                       
 Max.   :60.00   Bolivia  : 1                                       
                 (Other)  :45                                       
    Moneda          Women Entrepreneurship Index
 Length:51          Min.   :25.30               
 Class :character   1st Qu.:36.35               
 Mode  :character   Median :44.50               
                    Mean   :47.84               
                    3rd Qu.:59.15               
                    Max.   :74.80               
                                                
 Entrepreneurship Index Inflation rate  
 Min.   :24.80          Min.   :-2.250  
 1st Qu.:31.90          1st Qu.:-0.500  
 Median :42.70          Median : 0.600  
 Mean   :47.24          Mean   : 2.588  
 3rd Qu.:65.40          3rd Qu.: 3.600  
 Max.   :77.60          Max.   :26.500  
                                        
 Female Labor Force Participation Rate
 Min.   :13.00                        
 1st Qu.:55.80                        
 Median :61.00                        
 Mean   :58.48                        
 3rd Qu.:67.40                        
 Max.   :82.30                        
                                      

Repaso de la Campana de Gauss antes del análisis exploratorio

https://matemovil.com/distribucion-normal-ejercicios-resueltos/

ANÁLISIS DE DATOS EXPLORATORIO

En esta etapa ya pasamos por la LIMPIEZA DE DATOS Y COMPRESIÓN DE LAS VARIABLES ESTADÍSTICAS, ASI COMO SUS DEFINICIONES (CUALITATIVA O CUANTITATIVA)

#Graficos Interactivos

library(ggplot) library(plotly)

#BOXPLOTS o DIAGRAMAS CAJA Y BIGOTES

library(treemapify) library(treemap)

#Análisis Multivariable

En el entorno de programación R existen múltiples paquetes que implementan algoritmos de clustering y funciones para visualizar sus resultados. En este documento se emplean los siguientes:

   País Women Entrepreneurship Index Entrepreneurship Index
1:    4                         54.9                   64.9
2:    5                         63.6                   65.5
3:   16                         55.4                   60.2
4:   17                         66.4                   65.7
5:   18                         68.8                   67.3
6:   19                         63.6                   67.4
   Inflation rate
1:           0.90
2:           0.60
3:          -0.88
4:          -0.20
5:           0.00
6:           0.50
[1] 51  4
List of 9
 $ cluster     : int [1:102] 1 1 1 1 1 1 2 1 2 2 ...
 $ centers     : num [1:2, 1] 1.486 -0.457
  ..- attr(*, "dimnames")=List of 2
  .. ..$ : chr [1:2] "1" "2"
  .. ..$ : NULL
 $ totss       : num 100
 $ withinss    : num [1:2] 13.9 16.8
 $ tot.withinss: num 30.7
 $ betweenss   : num 69.3
 $ size        : int [1:2] 24 78
 $ iter        : int 1
 $ ifault      : int 0
 - attr(*, "class")= chr "kmeans"
rownames(base1)<-base_de_datos_1$País
fviz_cluster(k2, base1, ellipse.type = "norm", labelsize = 10)

library(plotly)
rownames(base1)<-base_de_datos_1$País
km_clusters <- kmeans(x = base1, centers = 2, nstart = 50)

# Las funciones del paquete factoextra emplean el nombre de las filas del
# dataframe que contiene los datos como identificador de las observaciones.
# Esto permite añadir labels a los gráficos.
#fviz_cluster(object = km_clusters, data = base1, show.clust.cent = TRUE,
 #            ellipse.type = "euclid", star.plot = TRUE, repel = TRUE) +
  #labs(title = "Resultados clustering K-means") +
  #theme_bw() +
  #theme(legend.position = "none")
#ggplotly(z)
#Bajo método Elbow
fviz_nbclust(base, kmeans, method = "wss")

#Bajo el Average Silhouette Method
fviz_nbclust(base, kmeans, method = "silhouette")

                       Entrepreneurship Index Inflation rate Clúster
Austria                           1.090512022    -0.31365178       1
Belgium                           1.127564729    -0.36940724       1
Estonia                           0.800265818    -0.64446749       1
Finland                           1.139915632    -0.51808846       1
France                            1.238722850    -0.48091815       1
Germany                           1.244898301    -0.38799239       1
Greece                           -0.323666293    -0.79686574       2
Ireland                           1.115213827    -0.53667361       1
Italy                            -0.366894451    -0.48091815       2
Latvia                            0.448265102    -0.44374785       2
Lithuania                         0.454440553    -0.64818452       2
Netherlands                       1.189319241    -0.36940724       1
Slovakia                         -0.113700954    -0.53667361       2
Slovenia                          0.361808786    -0.57384391       2
Spain                             0.145667995    -0.57384391       2
Croatia                          -0.410122609    -0.57384391       2
Denmark                           1.491916348    -0.38799239       1
Hungary                          -0.280438135    -0.49950330       2
Poland                            0.009808069    -0.64818452       2
Sweden                            1.516618152    -0.48091815       1
Australia                         1.874794319    -0.20214086       1
Iceland                           1.430161836    -0.18355571       1
Japan                             0.139492544    -0.33223693       2
Norway                            1.133740180    -0.07762034       1
Singapore                         1.288126459    -0.57384391       1
Switzerland                       1.319003715    -0.68535483       1
Taiwan                            1.349880971    -0.59428758       1
Algeria                          -1.052369530     0.41116917       2
Argentina                        -0.620087949     4.44414725       2
Bolivia                          -1.188229455     0.28107310       2
Bosnia and Herzegovina           -1.132650395    -0.66676967       2
Brazil                           -1.324089381     1.50211761       2
China                            -0.669491558    -0.22072602       2
Costa Rica                       -0.589210693    -0.33223693       2
Ecuador                          -1.175878553    -0.57384391       2
Egypt                            -1.182054004     1.56344862       2
El Salvador                      -1.089422237    -0.89908408       2
Ghana                            -1.385843892     2.71572807       2
India                            -1.354966637     0.61560584       2
Jamaica                          -1.237633065     0.20673249       2
Macedonia                        -0.626263400     0.20673249       2
Malaysia                         -0.447175316    -0.05345964       2
Mexico                           -1.021492274     0.02088097       2
Panama                           -0.928860507    -0.46233300       2
Peru                             -1.009141372     0.16956218       2
Russia                           -0.959737762     2.39978048       2
Saudi Arabia                      0.145667995    -0.25789632       2
Thailand                         -0.935035958    -0.64818452       2
Tunisia                          -0.725070618     0.41116917       2
Turkey                            0.454440553     0.95013859       2
Uruguay                          -0.360719000     1.13041457       2

Predicción K-Means

Otro Método con las librerías mclust, fpc y dbscan

“Choosing the best model The Mclust package uses maximum likelihood to fit all these models, with different covariance matrix parameterizations, for a range of k components. The best model is selected using the Bayesian Information Criterion or BIC. A large BIC score indicates strong evidence for the corresponding model.” (Alboukadel Kassambara, 2017, p. 173)

“Two important parameters are required for DBSCAN: epsilon (“eps”) and minimum points (“MinPts”). The parameter eps defines the radius of neighborhood around a point x. It’s called called the ’-neighborhood of x. The parameter MinPts is the minimum number of neighbors within “eps” radius.”(Alboukadel Kassambara, 2017,p.180)

---------------------------------------------------- 
Gaussian finite mixture model fitted by EM algorithm 
---------------------------------------------------- 

Mclust V (univariate, unequal variance) model with 2 components: 

 log-likelihood  n df       BIC       ICL
      -42.42879 51  5 -104.5167 -112.6898

Clustering table:
 1  2 
36 15 

Otro Método con las librerías mclust, fpc y dbscan

[1] "V"
[1] 2
               [,1]       [,2]
 [1,]  9.296744e-01 0.07032559
 [2,]  9.457978e-01 0.05420225
 [3,]  9.454535e-01 0.05454646
 [4,]  9.585080e-01 0.04149203
 [5,]  9.582105e-01 0.04178949
 [6,]  9.493552e-01 0.05064482
 [7,]  8.657213e-01 0.13427868
 [8,]  9.580303e-01 0.04196971
 [9,]  9.582105e-01 0.04178949
[10,]  9.561934e-01 0.04380658
[11,]  9.446349e-01 0.05536509
[12,]  9.457978e-01 0.05420225
[13,]  9.580303e-01 0.04196971
[14,]  9.557523e-01 0.04424766
[15,]  9.557523e-01 0.04424766
[16,]  9.557523e-01 0.04424766
[17,]  9.493552e-01 0.05064482
[18,]  9.585675e-01 0.04143253
[19,]  9.446349e-01 0.05536509
[20,]  9.582105e-01 0.04178949
[21,]  8.512431e-01 0.14875690
[22,]  8.275359e-01 0.17246408
[23,]  9.361167e-01 0.06388327
[24,]  5.902184e-01 0.40978161
[25,]  9.557523e-01 0.04424766
[26,]  9.343944e-01 0.06560563
[27,]  9.536689e-01 0.04633110
[28,]  6.880220e-05 0.99993120
[29,] 2.535170e-160 1.00000000
[30,]  1.964809e-03 0.99803519
class(k2)
[1] "kmeans"
library(fpc)
library(dbscan)


dbscan::kNNdistplot(base1, k =  2)+
abline(h = 0.35, lty = 2)

integer(0)
library(factoextra)
db <- fpc::dbscan(base1, eps = 0.35, MinPts = 2)
print(db)
dbscan Pts=51 MinPts=2 eps=0.35
       0  1 2 3
border 7  0 0 0
seed   0 37 5 2
total  7 37 5 2
# Cluster membership. Noise/outlier observations are coded as 0
db$cluster
 [1] 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 0 1 2 3 1
[34] 1 2 3 2 0 0 1 1 1 1 2 1 0 1 2 1 0 0
predict.dbscan(db, data= base1, newdata= base1[39:45,])
[1] 0 1 1 1 1 2 1

Regresión Lineal

En esta sección repasaremos la regresión lineal, evaluaremos el modelo global con el estadístico F y los estadístistcos t con sus respectivas hipótesis.


Call:
lm(formula = base_de_datos_1$`Women Entrepreneurship Index` ~ 
    base_de_datos_1$`Female Labor Force Participation Rate` - 
        1, data = base_de_datos_1)

Residuals:
    Min      1Q  Median      3Q     Max 
-25.748 -11.457   5.369  11.661  26.614 

Coefficients:
                                                        Estimate
base_de_datos_1$`Female Labor Force Participation Rate`  0.79896
                                                        Std. Error
base_de_datos_1$`Female Labor Force Participation Rate`    0.03196
                                                        t value
base_de_datos_1$`Female Labor Force Participation Rate`      25
                                                        Pr(>|t|)    
base_de_datos_1$`Female Labor Force Participation Rate`   <2e-16 ***
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 13.71 on 50 degrees of freedom
Multiple R-squared:  0.9259,    Adjusted R-squared:  0.9244 
F-statistic: 624.8 on 1 and 50 DF,  p-value: < 2.2e-16
plot(base_de_datos_1$`Women Entrepreneurship Index` ~ base_de_datos_1$`Female Labor Force Participation Rate` -1, data = base_de_datos_1)
abline(fit, col = "red")

Realizaremos un modelo de regresión con sus variables menos la media de las mismas.


Call:
lm(formula = y ~ x - 1, data = base_de_datos_1)

Residuals:
    Min      1Q  Median      3Q     Max 
-23.725 -11.734   3.014   9.585  23.186 

Coefficients:
  Estimate Std. Error t value Pr(>|t|)   
x   0.4542     0.1306   3.478  0.00106 **
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 12.8 on 50 degrees of freedom
Multiple R-squared:  0.1948,    Adjusted R-squared:  0.1787 
F-statistic:  12.1 on 1 and 50 DF,  p-value: 0.001055

Regresión Múltiple, sin el análisis de normalidad, multicolinealidad, heterocedasticidad, residuos, gráficos qq, entre otros

summary(fit3)

Call:
lm(formula = base_de_datos_1$`Women Entrepreneurship Index` ~ 
    base_de_datos_1$`Entrepreneurship Index` + base_de_datos_1$`Inflation rate` - 
        1, data = base_de_datos_1)

Residuals:
    Min      1Q  Median      3Q     Max 
-15.145  -2.320   1.419   4.362  12.836 

Coefficients:
                                         Estimate Std. Error t value
base_de_datos_1$`Entrepreneurship Index`  0.98922    0.01954  50.624
base_de_datos_1$`Inflation rate`          0.05635    0.16459   0.342
                                         Pr(>|t|)    
base_de_datos_1$`Entrepreneurship Index`   <2e-16 ***
base_de_datos_1$`Inflation rate`            0.734    
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 6.642 on 49 degrees of freedom
Multiple R-squared:  0.983, Adjusted R-squared:  0.9823 
F-statistic:  1413 on 2 and 49 DF,  p-value: < 2.2e-16

Finalmente evaluaremos muestras pareadas, sin embargo existen un sin número de pruebas experimentales, le recomiendo el libro de Campbell & Stanley (1995)

https://knowledgesociety.usal.es/sites/default/files/campbell-stanley-disec3b1os-experimentales-y-cuasiexperimentales-en-la-investigacic3b3n-social.pdf

datos.pre.post = data.frame(
   Nombre = c('Luis', 'Javier', 'Pedro', 'Soledad', 'Manuel', 'Cecilia', 'Cristina', 'Angel', 'Manuela', 'José', 'Juan', 'Antonio', 'Carmen', 'Carlos ', 'Francisco', 'Miguel', 'Laura', 'Lucía', 'Paula', 'Dolores'),
   Pre = c(18, 21, 16, 22, 19, 24, 17, 21, 23, 18, 14, 16, 16, 19, 18, 20, 12, 22, 15, 17),
   Post = c(22, 25, 17, 24, 16, 29, 20, 23, 19, 20, 15, 15, 18, 26, 18, 24, 18, 25, 19, 16)
 )


head(datos.pre.post)
   Nombre Pre Post
1    Luis  18   22
2  Javier  21   25
3   Pedro  16   17
4 Soledad  22   24
5  Manuel  19   16
6 Cecilia  24   29
var.test(datos.pre.post$Pre,datos.pre.post$Post)

    F test to compare two variances

data:  datos.pre.post$Pre and datos.pre.post$Post
F = 0.60329, num df = 19, denom df = 19, p-value = 0.2795
alternative hypothesis: true ratio of variances is not equal to 1
95 percent confidence interval:
 0.238790 1.524186
sample estimates:
ratio of variances 
         0.6032913 

##Haga Click Aqui para ver Certificado Machine Learning MIT https://www.credential.net/4dd365ea-ea5a-46a2-a72e-539e70545c6e

##Haga Click Aqui para ver Certificado Columbia Python for Managers https://certificates.emeritus.org/0a2e1de7-add2-4710-ad49-417d1dadfb61#gs.4a92hv ##Contacto:

Algunos Dashboards elaborados son: Para Bolsa de Valores https://rchang.shinyapps.io/rchang-stock-exchange/

Para el Estado del Clima https://rchang.shinyapps.io/rchang-app_clima_ho/

Para Machine Learning https://rchang.shinyapps.io/rchang-app/

Para Empresariales e Industriales https://rchang.shinyapps.io/rchang-app_final_emp/

Para Dashboards con log in https://rchang.shinyapps.io/clase_3-shiny-2/_w_ae4e775f/_w_f249a9a1/?page=sign_in

y para Sistemas de Información Geográfica