Descarga la aplicación para disfrutar aún más
Vista previa del material en texto
Analisis de conglomerados 1 � Analisis de conglomerados Tipo Anotaciones Etiquetas #con este comando elimino la memoria del R, es recomendable rm(list=ls(all=T Es muy importante cargar en el R la libreria que vamos a utilizar ahora para cargar un archivo, es muy facil si esta en la carpeta del directorio apretamos con click al archivo y lo importamos Realizar boxplot Analisis de conglomerados 2 Esto me quiere decir que hay directivos con mucha remuneracion, uno muy joven, algunos con mucha experiencia, muchos que venden bien y repartido en los beneficios generados con los siguientes comandos vemos los comandos que estan corridos: boxplot(Salario_Dir$EDAD$out boxplot(Salario_Dir$SYS$out boxplot(Salario_Dir$EXP_EMP$out boxplot(Salario_Dir$VENTAS$out boxplot(Salario_Dir$BENEF$out Outlyiers utilizando zscore #Gráfico los valores estandarizados y agrego límite en Z3 plot(Salario_Dir$CASO,Salario_Dir$ZSYS,col="coral",pch=19#gráfico de dispersión para ZSYS abline(h=c(3,3),col="black")#agrego una línea en Z3 Analisis de conglomerados 3 text(Salario_Dir$CASO,Salario_Dir$ZSYS,labels=round(Salario_Dir$SYS,2,pos=2#agrego valores al gráfico Los 3 valores arriba de 3 vendrian a ser outliers. En un contexto MULTIVARIADO: Distancia de Mahalanobis: � Sal_Mahalanobis <- Salario_Dir[, c(8:13)] En este comando, se crea un nuevo Data Frame llamado Sal_Mahalanobis a partir del Data Frame Salario_Dir . Este nuevo Data Frame incluye solo las columnas cuyos índices van desde 8 hasta 13. Estas columnas contienen las variables que se utilizarán para calcular la distancia de Mahalanobis. � medias <- colMeans(Sal_Mahalanobis) Se calcula un vector de medias utilizando la función colMeans() . Este vector contiene las medias de las variables en el Data Frame Sal_Mahalanobis . Las medias se utilizan como parte del cálculo de la distancia de Mahalanobis. � sx <- round(cov(Sal_Mahalanobis), 2) Se calcula la matriz de covarianzas utilizando la función cov() . Luego, la función round() se utiliza para redondear los valores de la matriz a dos decimales. La matriz de covarianzas es necesaria para calcular la distancia de Mahalanobis. � D2 <- mahalanobis(Sal_Mahalanobis, medias, sx, inverted = FALSE) Finalmente, se calcula la distancia de Mahalanobis para cada observación en el Data Frame Sal_Mahalanobis Analisis de conglomerados 4 utilizando la función mahalanobis() . Se utiliza el vector de medias ( medias ) y la matriz de covarianzas ( sx ) como parámetros. El argumento inverted = FALSE indica que no se está utilizando la inversa de la matriz de covarianzas en el cálculo. La distancia de Mahalanobis es una medida que se utiliza en estadísticas multivariadas para detectar outliers o valores atípicos en un conjunto de datos multivariados. El resultado, en este caso, es un vector D2 que contiene las distancias de Mahalanobis para cada observación en Sal_Mahalanobis . Valores altos en este vector pueden indicar que una observación está lejos del centro de la distribución de las variables, lo que podría ser un indicio de que es un outlier. Analisis outlayers � plot(D2) Este comando crea un gráfico de dispersión de las distancias de Mahalanobis ( D2 ) para evaluar outliers. El eje x representa las observaciones, y el eje y representa las distancias de Mahalanobis. Este gráfico te permite visualizar las distancias de las observaciones y detectar posibles outliers. � abline(h = 20, col = "black") Aquí se agrega una línea horizontal en el gráfico en la posición y 20 (o cualquier otro valor crítico que elijas para definir qué observaciones se consideran outliers). Esta línea ayuda a identificar las observaciones que están por encima de este valor crítico. � text(Salario_Dir$CASO, D2, labels = round(Salario_Dir$SYS, 2), pos = 2) Este comando agrega etiquetas en el gráfico que muestran el valor de "SYS" redondeado a dos decimales para cada observación. Estas etiquetas están colocadas en la posición 2 (por encima) en el gráfico. � outliers_m <- which(Salario_Dir$SYS %in% c(4657, 684, 4530, 600)) Se crea un vector llamado "outliers_m" que contiene las posiciones (índices) de las observaciones que se consideran outliers. Estas observaciones tienen valores en la columna "SYS" que coinciden con los valores 4657, 684, 4530 y 600. � Salario_Dir$CASO[outliers_m] Aquí se busca y muestra los valores en la columna "CASO" del Data Frame Salario_Dir que corresponden a las observaciones identificadas como outliers en "outliers_m". � Sal_Var <- Salario_Dir[1:7] Se crea un nuevo Data Frame llamado "Sal_Var" que contiene solo las primeras 7 columnas (variables) de Salario_Dir . Esto se hace para analizar solo las variables sin incluir la columna "CASO." � Extremos <- subset(Salario_Dir, CASO == 14) Aquí se crea un Data Frame llamado "Extremos" que contiene las filas de Salario_Dir donde el valor en la columna "CASO" es igual a 14. Esto se utiliza para buscar un solo valor específico. � Extremos2 <- Sal_Var[Sal_Var$CASO %in% c(14, 42, 70, 88, 97),] Se crea un Data Frame llamado "Extremos2" que contiene las filas de "Sal_Var" donde el valor en la columna "CASO" coincide con los valores 14, 42, 70, 88 y 97. Esto se utiliza para buscar varios valores específicos. Analisis de conglomerados 5 � Prom <- colMeans(Sal_Var) Aquí se calculan las medias por columnas en el Data Frame "Sal_Var." El resultado es un vector de medias para cada variable. � Extremo_Medias <- rbind(Extremos2, Prom) Se crea una tabla llamada "Extremo_Medias" que combina las filas de "Extremos2" y el vector de medias "Prom" para analizar las observaciones que se consideraron outliers junto con las medias de las variables. CASO SYS EDAD EXP_PTO EXP_EMP VENTAS BENEF <dbl><dbl><dbl><dbl><dbl><dbl><dbl> 1 14 4657 60 38 11 11572 1618 2 42 600 52 12 2 21351 101 3 70 600 60 42 1 1214 43 4 88 4530 50 27 9 3077 98 5 97 684 62 36 2 12794 -1086 6 50.5 1122. 56.9 23.8 8.96 4083. 137. De los resultados podemos apreciar el valor de cada variable de los sujetos considerados outlayers y como se alejan de la media de cada vble
Compartir