[K means] Análisis de Clúster en R y Rstudio. [Chupitos de R]

Поділитися
Вставка
  • Опубліковано 10 лют 2025
  • #clúster #kmedias #kmeans
    ¡¡¡ESTOY INTERPRETANDO AL REVES LA MATRIZ DE DISTANCIA, EL ROJO SERÍA MÁS DISTANCIA (DISIMILITUD), Y NO RELACIÓN, COMO DIGO YO EN EL MIN 3.50.!!!
    Si te gusta mi contenido y quieres, puedes pagarme un café en: ko-fi.com/chup... así no me dormiré mientras hago los chupitos. Le daré a Alejandro su medio café.
    En este chupito de R os explicaré como utilizar este algoritmo para toma de decisiones llamado K medias. Se trata de una técnica de análisis por conglomerado que permite tomar decisiones sobre cuántos grupos se divide nuestra muestra. K-medias es súper fácil de hacer y aquí os muestro cómo se hace en Rstudio de una forma sencilla. Cómo hacer clúster en R. Rstudio es un programa ideal para hacer estos análisis estadísticos.
    Toda la sintaxis:
    github.com/pab...

КОМЕНТАРІ • 339

  • @stev0786
    @stev0786 Рік тому

    Muchas gracias por esta explicación.
    Estoy haciendo el servico con físicos químicos y me pedían hacer un buen código para el análisis multivariable e hice unos con PCA, pero tiempo después conocí el análisis de cluster y no lo lograba entender.
    Con este video que hiciste, me acabas de aclarar muchas dudas.
    Ojalá vuelvas a subir más videos.

  • @alejandrogutierrezvalverde3078
    @alejandrogutierrezvalverde3078 4 роки тому +14

    Me gusto esta frase: "El R-studio te hace cosas mas complejas, sino nos quedaríamos con programas sencillitos como el SPSS"

  • @alboradadelgracioso1
    @alboradadelgracioso1 Рік тому

    Gracias por esta explicación, está sencilla y útil. Saludos desde Cali, Colombia

  • @LACARArock
    @LACARArock 3 роки тому +2

    Llevo 2 años aprendiendo R y el logaritmo de UA-cam no se había dado cuenta de lo bien que me habrías venido... jaja
    Buen trabajo!

    • @PabloVallejoMedina
      @PabloVallejoMedina  3 роки тому

      jajaj, hace dos años el canal no existía ;). Así que no está tan mal.

  • @PabloSCHROETER
    @PabloSCHROETER Рік тому

    una locura! excelente y muy didáctico el video, gracias!

  • @davidtrash006
    @davidtrash006 3 роки тому

    ¡Gracias!

  • @pedrolopezdelcastillo3069
    @pedrolopezdelcastillo3069 4 роки тому +2

    Muchas gracias, bien explicado, bien comprendido, saludos sigue así

  • @jairovx
    @jairovx 4 роки тому

    Increíble video! Había aprendido a hacer k-mean en python y quería saber cómo se hace en R, tu video es el mejor de todos los que he visto!! Genio!! Gracias por compartir!!

  • @adancastro2220
    @adancastro2220 Рік тому

    Gracias Hermano! excelente explicacion. Saludos de Ultramar 👍

  • @ayoubben109
    @ayoubben109 Рік тому

    Buenas, solo comentarte que enhorabuena por tu capacidad explicativa. Buscaba algún video para conocer los fundamentos del clustering en R, y saber para qué se usa exactamente y las funciones disponibles, y la verdad que en 20 min me he enterado de todo sin tener que parar el video (algo complicado de lograr cuando se tratan tecnicismos). Así que nada, gracias.

    • @PabloVallejoMedina
      @PabloVallejoMedina  Рік тому +1

      Un placer, no entro mucho en las matemáticas, pero me alegra que te sirviera de ayuda.

  • @navarromendezalejandroguad8962
    @navarromendezalejandroguad8962 2 роки тому

    Muchas gracias me fue de mucha utilidad saludos desde México 😁

  • @albertogallegosrivera5934
    @albertogallegosrivera5934 3 роки тому

    Muchas gracias, en verdad este video me ayudo mucho para poder acomodar de mejor forma la base y poder trabajar con el análisis de cluster

  • @deruan7625
    @deruan7625 3 роки тому

    Creo que por fin he entendido el Cluster Analysis, muy bien explicado!!

  • @PhDPA
    @PhDPA 3 роки тому

    Excelente Pablo muchas gracias por el video estoy estudiante un master en Data Science y me sirvió mucho tu video!!

  • @andres59565
    @andres59565 4 роки тому

    Gracias man! me ha sido muy útil tu video tutorial. Un saludo desde Argentina.

    • @PabloVallejoMedina
      @PabloVallejoMedina  4 роки тому

      Genial, me alegra mucho. Creo que el canal se va haciendo conocido últimamente por Argentina ;)

  • @MS-BeatrizBosques
    @MS-BeatrizBosques 2 роки тому

    Super bien explicado! Mil gracias

  • @luisatorres7193
    @luisatorres7193 4 роки тому +9

    Me ha encantado! Lo explicas muy muy bien. Cuando puedas uno de ACP😊

    • @PabloVallejoMedina
      @PabloVallejoMedina  4 роки тому +3

      Hola, no soy muy fan yo del ACP, pero ya sois varios los que lo habéis pedido. De todas formas hay uno que es de análisis factorial exploratorio... ua-cam.com/video/V0KOVwoU9gk/v-deo.html

  • @marisagalarz
    @marisagalarz 3 роки тому

    Uno de los mejores vídeos respecto a K-Medias

    • @PabloVallejoMedina
      @PabloVallejoMedina  3 роки тому

      muchas gracias!!

    • @marisagalarz
      @marisagalarz 3 роки тому

      @@PabloVallejoMedina Tengo la siguiente consulta: He tratado de simular el dataset de USArrests para aplicar lo mismo a otros datos. Sin embargo, no sé como manejar la columna de Estado. Creé un csv con 5 columnas, la primera corresponde al estado. Sin embargo, al leer el csv se agrega el rowname con un número de fila y no con el nombre del estado. Es decir, el df generado directamente desde el archivo USArrests es distinto al csv que he creado. No sé como manejar la columna de estado para que sea considerada como rowname. Muchas gracias por tu tiempo y la gran ayuda.

    • @PabloVallejoMedina
      @PabloVallejoMedina  3 роки тому

      @@marisagalarz Hola María, podrías utilizar la función Rowtocolumname. En el video de clustar con la base de marvel muestro como se hace.

    • @marisagalarz
      @marisagalarz 3 роки тому

      @@PabloVallejoMedina Hola Pablo. Agradezco tu gran ayuda. Tienes los mejores vídeos.

    • @PabloVallejoMedina
      @PabloVallejoMedina  3 роки тому

      @@marisagalarz Muchas gracias!!

  • @constanzavargas805
    @constanzavargas805 2 роки тому

    Muy buen vídeo!! Muchas gracias por compartir y explicar el proceso :)

  • @leonardosotoalvarez1156
    @leonardosotoalvarez1156 Рік тому

    Hola Pablo, muy buen video, me encanto!!. Muchas Gracias!!. Solo tengo una duda, una ves definidos los clúster, como puedo ir asignado clúster a posteriores observaciones entrando sin tener que realizar todo el proceso de clusterización nuevamente.

  • @damianbahamondes7273
    @damianbahamondes7273 3 роки тому

    Excelente video!!, aprendí bastante, saludos desde Chile.
    Suscriptor 5600! a seguir dándole caña

  • @geolomera
    @geolomera 3 роки тому

    Muy bien explicado. Muchas gracias!

  • @jessicalopezcasas2290
    @jessicalopezcasas2290 Рік тому

    Excelente explicación...una suscriptora más

  • @ruloEcuador
    @ruloEcuador 2 роки тому

    Excelente video, gracias por compartir tu conocimiento

  • @JorgeRamirez-hp5fl
    @JorgeRamirez-hp5fl 2 роки тому

    Señor le agradezco..... me ayudo mucho

  • @guadalupevalenzuela2044
    @guadalupevalenzuela2044 4 роки тому +1

    Súper claro, me ha servido mucho!!! Muy buena explicación. Ojalá puedas hacer uno del algoritmo de Kamila :)

    • @PabloVallejoMedina
      @PabloVallejoMedina  4 роки тому

      Hola, muchas gracias. No creo que me meta con cami. Nunca lo he empleado y no suelo hacer chupitos de técnicas que conozco poco ;)

  • @edwarurquizazapata3237
    @edwarurquizazapata3237 3 роки тому

    Excelente, muy claro.

  • @MedinaMedina.
    @MedinaMedina. 4 місяці тому

    Perdóname, pero es solo curiosidad. La gráfica en que muestras la distribución de personajes, ¿son gráficas en componentes principales, específicamente la llamada gráfica de individuos?, lo digo por las cantidad de varianza explicada (presumo) que aparece en las dos primeras dimensiones que (también presumo) por defecto muestra.

  • @cristianpalacios8773
    @cristianpalacios8773 3 роки тому

    Muy bueno Pablo, fue de gran ayuda.

  • @BeaMorgado
    @BeaMorgado 4 роки тому +1

    Ahaha gracias, creo que te amo. Fuiste de gran ayuda :)

  • @manueljleon2181
    @manueljleon2181 2 роки тому

    Excelente Video mi pana, saludos!!

  • @gnacho98
    @gnacho98 4 роки тому

    excelente, muy didactico, te veo desde argentina!

  • @josealejandrofausac
    @josealejandrofausac 4 роки тому

    Excelente!!! Muchas gracias por compartir. Me ha sido de gran utilidad

  • @luiscardozo4810
    @luiscardozo4810 3 роки тому +1

    Excelente, gracias por compartir la sintaxis

  • @josejaramillo8596
    @josejaramillo8596 3 роки тому

    Gracias por compartir su conocimiento, excelente video.

  • @wildonrp
    @wildonrp 4 роки тому

    Excelente, felicitaciones y gracias

  • @lucasconte1324
    @lucasconte1324 4 роки тому

    Excelente, me clarifico mucho el uso de clusters.

  • @maribeldelgado4133
    @maribeldelgado4133 4 роки тому

    Saludos desde México!! Que gran video!!!

  • @AntonellaGiglioDigital
    @AntonellaGiglioDigital 2 роки тому +1

    Muy clara tu explicación, estoy aprendiendo R para clusterizar. Tengo una consulta, se puede descargar la nueva tabla con los datos de cluster que se crean? Mi intención es poder individualizar cada usuario respecto al algoritmo que pertenece para después poder realizar acciones segmentadas. En caso de qué se pueda, cómo podría obtener tal base?

  • @samirricardoneme-chaves9086
    @samirricardoneme-chaves9086 4 роки тому

    Tremendo chupito, muy ilustrativo.... Extrañe el ostiaaaaa jejejejeje

  • @elqvixote1861
    @elqvixote1861 4 роки тому

    Que buen canal. R es espectacular.

  • @FFFD-1984
    @FFFD-1984 2 роки тому

    Muchas gracias, excelente

  • @jorgeleonardosolisbanguera7003
    @jorgeleonardosolisbanguera7003 3 роки тому

    Excelente vídeo. Entendí por fin este tema

  • @GaboMoya
    @GaboMoya Рік тому

    Existe alguna forma de utilizar corplot para poder ver como se correlacionan las variables con cada cluster?

  • @tyrahstipe
    @tyrahstipe Рік тому

    Muy buena explicación, gracias. Entiendo que gather es lo que ahora es pivot_longer?

  • @j0oonaa
    @j0oonaa 4 роки тому

    Excelente video, muy claro toda la explicación. Gracias!

  • @luisangelbarrera-guzman7463
    @luisangelbarrera-guzman7463 4 роки тому

    Hola Pablo que buen vídeo has hecho. A partir del minuto 11:18 sale dibujado el primer gráfico de clusters, en el eje x dice "Dim1 62%" y en el eje y "Dim2 24.7%". Me podrías decir de favor que significan esos porcentajes

    • @PabloVallejoMedina
      @PabloVallejoMedina  4 роки тому

      Hola, es el % de variabilidad explicada por cada dimensión. Me alegro que te guste.

    • @luisangelbarrera-guzman7463
      @luisangelbarrera-guzman7463 4 роки тому

      @@PabloVallejoMedina Muchas gracias Pablo, no sé si sea parecido al de análisis de componentes principales. Saludos desde México.

  • @lorenzorivas5788
    @lorenzorivas5788 2 роки тому

    Es genial como todos los videos. Una pregunta: una vez que he generado los clusters a partir de mi data frame, puedo construir un modelo de regresión a partir de ellos?
    Muchas gracias

    • @PabloVallejoMedina
      @PabloVallejoMedina  2 роки тому +1

      Sí, claro puedes hacer un modelo por cluster, o emplear la variable como predictora o dependiente (pero adaptado el modelo a variables politómicas).

    • @lorenzorivas5788
      @lorenzorivas5788 2 роки тому

      @@PabloVallejoMedina perfecto muchas gracias y enhorabuena por los videos

  • @diegodiazmilanes3732
    @diegodiazmilanes3732 3 роки тому

    Muchas gracias por tu video. Ha sido muy útil y didáctico (como todo tu canal). ¿Podrías hacer un video o dar alguna referencia (artículo o pagina web sobre análisis cluster bietapico en R)? Específicamente que pueda integrar variables categóricas como lo hace el algoritmo de SPSS.

    • @PabloVallejoMedina
      @PabloVallejoMedina  3 роки тому

      Hola, la verdad no tengo esos conocimientos. En esta ocasión no puedo ayudar ;)

    • @diegodiazmilanes3732
      @diegodiazmilanes3732 3 роки тому

      @@PabloVallejoMedina Mil gracias por responder tan rápido. Igualmente, gracias por tu labor y espero que tu canal no deje de crecer.

  • @elizabethvillavicenciobill6124
    @elizabethvillavicenciobill6124 4 роки тому

    Excelente videos, gracias por el aporte!

  • @GuilleADC
    @GuilleADC 4 роки тому

    Excelente video ! Gracias Pablo.

  • @mexa31416
    @mexa31416 4 роки тому

    Está genial tu video. Saludos!

  • @domenech1997
    @domenech1997 4 роки тому

    Un video genial, me ha ayudado muchisimo

  • @monsesantillan3012
    @monsesantillan3012 Рік тому

    Muy buen video, se puede hacer que aparezca como labels otra columna? Y adicionalmente, puede aparecer en el gráfico algún otro dato, como las medias o algo, encima de cada grupo? Gracias por tu respuesta, saludos!

    • @PabloVallejoMedina
      @PabloVallejoMedina  Рік тому +1

      Hola Monse, sí todo se puede. Lo de las etiquetas lo tienes en el video de cluster y super héroes. Y lo de las medias, lo puedes hacer programando en ggplot, o hacerlo una vez exportado. Lo puedes ver en mi video de anotaciones fácil en ggplot. Un saludo!!

    • @monsesantillan3012
      @monsesantillan3012 Рік тому

      Muchas gracias! Saludos

  • @melinacardenas9302
    @melinacardenas9302 5 місяців тому

    Hola Pablo, buenos dias. Me encanta la explicación, solo que cuando yo corro mi programa a la hora de que muestra mis clusters no me sale a que corresponde y a las etiquetas que se ven

    • @PabloVallejoMedina
      @PabloVallejoMedina  5 місяців тому

      @@melinacardenas9302 creo que puedes obtener la respuesta en el vídeo de superhéroes

  • @lorenzorivas5788
    @lorenzorivas5788 2 роки тому

    El video es excelente y didáctico

  • @juanralainez9589
    @juanralainez9589 Рік тому

    Hola Pablo, recien trato de emular el video y me sale el siguiente error: > fviz_nbclust(resnumclust)
    Esto al momento de buscar el grafico de barras para ver los clusters en el minuto 8:49
    Error in if (class(best_nc) == "numeric") print(best_nc) else if (class(best_nc) == :
    the condition has length > 1
    agradez

    • @PabloVallejoMedina
      @PabloVallejoMedina  Рік тому

      Hola, imposible de solucionar con esa información. échale un ojo a los foros.

  • @rogerlmd
    @rogerlmd 4 роки тому +1

    Excelente!!!

  • @JOHANNEMILIANOOYOLAMASLUCAN

    Una consulta, por qué cuando ejecuto los comandos para estimar el número de clusters me sale error? Me sale este mensaje Error in do_one(nmeth) : NA/NaN/Inf in foreign function call (arg 1)

  • @danielgodoy9793
    @danielgodoy9793 3 роки тому

    Muy bueno, gracias!

  • @adventureaf9549
    @adventureaf9549 2 роки тому

    Otra cosita pabloo, seguí al pié de la letra tu video, pero mis cluster se invirtieron, o sea para ti el cluster 2 era el que agrupaba los estados más peligrosos, pero en mis resultados es al contrario, a que se debe eso ?

  • @juliogomez5224
    @juliogomez5224 3 роки тому

    Hola Pablo. Felicidades por tu excelente trabajo con estos vídeos. Tengo una consulta, podrías explicarme que es el (nstart = 25), no lo entiendo muy bien. Además, que me recomiendas al trabajar con 1125 observaciones diferentes, al hacer el cluster, uno se entiende perfectamente (pocas palabras), pero el segundo no se observa nada, debido al gran volumen de palabras que contiene. Saludos!

    • @PabloVallejoMedina
      @PabloVallejoMedina  3 роки тому +1

      El K-means es un algoritmo supervisado. Nosotros le tenemos que ir indicando ciertos parámetros. El te va a escoger x puntos, uno por cada cluster que le hayamos dicho, y va a por ejemplo incluir el vecino más cercano en ese cluster. Esos x puntos se eligen al azar. con el nstart le decimos cuantas iteraciones va a hacer. En función de otros parámetros te elegirá los clúster que mejor optimizados estén.
      Respecto a lo segundo a mi tmb me pasa en mi otro video de kmeans (marvel). hay una opción que te saca flechitas y te dice los nombres más claramente, pero sinceramente no ayuda mucho. Eso es lo único que conozco. De todas formas no siempre se puede sacar un listado si hicera falta.

  • @Elvuevaso
    @Elvuevaso 3 роки тому

    Excelente!!

  • @ryvysaint34
    @ryvysaint34 4 роки тому

    Muy buena explicación. En el ejercicio que yo tengo los países está como un atributo pero al momento de hacer kmeans tengo que eliminar esa columna y al momento de graficar no sé cómo poner nuevamente los nombres de los países y no me salgan números por los nombres.

    • @PabloVallejoMedina
      @PabloVallejoMedina  4 роки тому

      Hola, puedes crear una variable normal con las etiquetas que desees y luego pasarla a rownames así:
      dfitems

    • @ryvysaint34
      @ryvysaint34 4 роки тому

      @@PabloVallejoMedina gracias lo voy a intentar

  • @pastorsoto1298
    @pastorsoto1298 4 роки тому

    Excelente video. Siempre que trabjas con datos lo estandarizas o solo es por este caso en particular? Saludos!

    • @PabloVallejoMedina
      @PabloVallejoMedina  4 роки тому

      Hola pastor. Cuando la escala de medida difiere entre variables se recomienda estandarizar. Si todas van de 0 a 100 por ejemplo no seria tan necesario. Pero aun mejor sería mirar si las varianzas sean iguales o distintas... si es el último caso toca estandarizar. 😄

    • @pastorsoto1298
      @pastorsoto1298 4 роки тому

      @@PabloVallejoMedina Estandarizar es apropiado en todos los casos? o existen situaciones en las que no es apropiado y puede dar resultados erroneos? Para hacer modelos predictivos (de regresion) estandarizarias siempre? Gracias por tu respuesta!

    • @PabloVallejoMedina
      @PabloVallejoMedina  4 роки тому

      @@pastorsoto1298 Hola, es decir, si tus variables tienen varianzas muy desiguales entre ellas. O directamente las unidades de medida son diferentes (por ejemplo millones de dólares en petróleo y PIB) Deberías estandarizarla. En el caso que fueran las mimas unidades (o tuvieran varianzas similares) como ratio de covid por países, entonces no sería necesario. No lo hago como norma general, sino en función de los datos.

  • @tatianamancera1660
    @tatianamancera1660 3 місяці тому

    Mil gracias, pregunta tengo una base con saldos de creditos pendientes por regiones pero al escalar los datos me dice que X debe ser númerico y no he podido solucionar

    • @PabloVallejoMedina
      @PabloVallejoMedina  3 місяці тому

      Hola, pues supongo que tendrás que transformarla a numérica, ¿no?

  • @ivandariopaezchavez7506
    @ivandariopaezchavez7506 3 роки тому

    porque al momento de sacar el numero de cluster me aparece esto:
    Error in do_one(nmeth) :
    NA/NaN/Inf en llamada a una función externa (arg 1)
    Además: Warning messages:
    1: In stats::dist(x) : NAs introducidos por coerción
    2: In storage.mode(x)

  • @WITHHARDMAN
    @WITHHARDMAN 2 роки тому +1

    Una pregunta, para bases de satos de 1500 filas y 22 columnas, como puedes hacerlo. Por que tengo agrupaciones en columnas en variables en binarias, pero no se puede representar bien puesto que hay 1500 filas ....y no se ni por donde cogerlo, los ejes ni se ven, osea en los ejes de mi base de datos no se aprecian puesto que son los clientes, por que estamos estudiando la base de un banco de Portugal.

    • @PabloVallejoMedina
      @PabloVallejoMedina  2 роки тому

      Hola, no es una base muy grande por lo que no debería haber un gran problema. Pero, para empezar, yo nunca elegiría K-means para hacer un cluster de variables dicotómicas. No sé qué variables son, ni cuál es tu objetivo, pero me replantearía si este análisis cumple con lo necesario. Saludos!!

  • @joserds25
    @joserds25 4 роки тому

    Gran vídeo muchas gracias por tus vídeos

  • @miguelfranciscogalvancabel6402
    @miguelfranciscogalvancabel6402 4 роки тому

    Muchas gracias por este video, Pablo. Quedó todo muy claro. Me surge una consulta a partir de este tema, quiero realizar un análisis de clúster con dos o tres variables categóricas (Nivel socioeconómico y proyección de estudios). ¿Qué tipo de análisis de clúster recomendarías en estos casos?
    Saludos, gracias por el apoyo!!

    • @PabloVallejoMedina
      @PabloVallejoMedina  4 роки тому

      Hola, depende un poco de tus datos, pero puedes utilizar RObust Clustering using linKs, o si son mixtos PAM te puede servir, tengo un chupito de ese también ua-cam.com/video/zyixcd_WKUI/v-deo.html Pero vaya , hay diferentes alternativas.

  • @francoreveruzzi5490
    @francoreveruzzi5490 4 роки тому +1

    Muy buenas Pablo!! Genial el video!!! no sabes como me estas salvando un trabajo XD pero me salio un pequeño error que me hace ruido "Error in NbClust(df, diss = m.distancia, distance = NULL, min.nc = 0, :
    The TSS matrix is indefinite. There must be too many missing values. The index cannot be calculated." y nada, si tienes idea o te ha pasado me gustaría saber como sacármelo de encima. Saludos.

    • @PabloVallejoMedina
      @PabloVallejoMedina  4 роки тому

      Supongo que tendrás que hacer una imputación de casos perdidos ¿no?

    • @dabonillao
      @dabonillao 4 роки тому

      @@PabloVallejoMedina Hola Pablo, en primer lugar muchas gracias por tus aportes.
      Tuve el mismo error que Franco y luego de descartar que fuera por casos perdidos tuve que correrlo en loop basándome en una respuesta de alguna persona en un foro.
      sum(is.na(df))
      [1] 0
      #Aún así no me aceptó varios algoritmos y al final solo usé 16. Cuando intenté incluir algunos manualmente me saliá el mismo error de TSS matrix...
      lista.methods = c("kl", "ch", "hartigan","mcclain", "gamma", "gplus",
      "tau", "dunn", "sdindex", "sdbw", "cindex", "silhouette",
      "ball","ptbiserial", "gap","frey")
      lista.distance = c("metodo","euclidean", "maximum", "manhattan", "canberra")
      tabla = as.data.frame(matrix(ncol = length(lista.distance), nrow = length(lista.methods)))
      names(tabla) = lista.distance
      for (j in 2:length(lista.distance)){
      for(i in 1:length(lista.methods)){
      nb = NbClust(df, distance = lista.distance[j],
      min.nc = 2, max.nc = 10,
      method = "complete", index =lista.methods[i])
      tabla[i,j] = nb$Best.nc[1]
      tabla[i,1] = lista.methods[i]
      }}
      tabla
      metodo euclidean maximum manhattan canberra
      1 kl 4 10 2 4
      2 ch 3 4 2 2
      3 hartigan 10 10 4 6
      4 mcclain 2 2 2 2
      5 gamma 2 2 10 10
      6 gplus 2 2 10 2
      7 tau 3 10 10 10
      8 dunn 2 2 10 2
      9 sdindex 9 3 7 2
      10 sdbw 9 8 10 10
      11 cindex 10 8 2 10
      12 silhouette 2 2 2 10
      13 ball 3 3 3 3
      14 ptbiserial 3 5 10 10
      15 gap 2 2 2 2
      16 frey 1 4 2 1
      ¿A qué crees que se deba que los otros 14 den error? Gracias!

    • @PabloVallejoMedina
      @PabloVallejoMedina  4 роки тому +1

      @@dabonillao buaa genial. muy interesante. Se me ocurre que tengas eigenvalores negativos y que por tanto algunos indicadores no iteren. Creo con los datos que tienes que 2, 3 o 4 van a ser los mejores. Pero si los quieres todos asegurate que tus variables estan normalizadas y que ninguna se vaya negativa. Quizá eso podría darte el error. Siempre puedes probar con la matriz traspuesta... t(tusdatos). Me cuentas a ver si algo funciona ;)

    • @dabonillao
      @dabonillao 4 роки тому

      @@PabloVallejoMedina Muchas gracias! Estamos en contacto.

  • @Sefer8
    @Sefer8 2 роки тому

    Me gusto mucho el video y agradezco que enseñes tan bien Pablo. Pero tengo una duda, cuando generas los clúster que significan los porcentajes al lado de cada dimensión ? Saludos

    • @PabloVallejoMedina
      @PabloVallejoMedina  2 роки тому

      Hola, ¿en que minuto sale?

    • @Sefer8
      @Sefer8 Рік тому

      En el 12:27 aparece un porcentaje en Dim1 y Dim2 eso es la variabilidad entre qué cosas ? Saludos Pablo

  • @SamuelPLeon
    @SamuelPLeon 4 роки тому +1

    Muchas gracias por el vídeo Pablo. Una pregunta, he usado el análisis de clúster para hacer perfiles de las puntuaciones de una escala y así usarlos como variables categóricas moduladores en una regresión. El tema es que nunca he hecho este tipo de análisis y no se bien como reportarlo en un paper en estilo apa. Sabrías algún documento, manual, o incluso algún paper tuyo que usar de guía? Gracias

    • @PabloVallejoMedina
      @PabloVallejoMedina  4 роки тому +1

      Hola yo nunca he pasado de cluster a regresión. Si a Anova. Si quieres échale un ojo a este paper que hacen algo parecido:
      Colombian people’s willingness to forgive offenses against women perpetrated during the armed conflict... www.scielo.org.co/scielo.php?script=sci_arttext&pid=S0120-05342019000300226

    • @SamuelPLeon
      @SamuelPLeon 4 роки тому

      @@PabloVallejoMedina Gracias Pablo. Si lo piensas, Anova y GLM vienen a ser lo mismo. El año pasado, un estudio implementado en r demostraba que (casi) todos los análisis al final son Linear models. Te dejo el link por si lo desconocías:
      lindeloev.github.io/tests-as-linear/

  • @rubenpizarrogurrola3566
    @rubenpizarrogurrola3566 4 роки тому

    Excelente, este tipo de videos

  • @jaasjaas9039
    @jaasjaas9039 2 роки тому

    pablo! tengo una super duda que data frame se pone en el codigo de NbClust() ? el data frame con los datos estandarizados o no estandarizados? ya que no se si colocar en esa funcion el data frame con los datos sin ser estandarizados, porque como en esa funcion se indica que la distancia es euclidea eso no haria que ese data frame que no esta estandarizado se estandarice?

    • @PabloVallejoMedina
      @PabloVallejoMedina  2 роки тому

      Hola, el que quieres clustear. Si es normalizado o no depende de los datos.

  • @rodrigobarahona6928
    @rodrigobarahona6928 9 місяців тому

    Hola Pablo, cómo estás? te escribo desde Chile. Quisiera consultarte sobre un error que me arroja el R con tu script: "Error in do_one(nmeth) : NA/NaN/Inf in foreign function call (arg 1)". He probado de todas las formas y no me resulta. Quizás un error en el csv? coloqué las localidades a comparar en columnas.

  • @Luis-fx8jz
    @Luis-fx8jz 3 місяці тому

    ¿Este procedimiento se puede hacer cuando las variables son de tipo binarias y categóricas? En particular me preocupa que se use el método eucliano para medir las distancias.

    • @PabloVallejoMedina
      @PabloVallejoMedina  3 місяці тому

      Creo que hay algortimos mejores. Kmedoids por ejemplo.

  • @sebastianbustamantemanriqu7386
    @sebastianbustamantemanriqu7386 4 роки тому

    Hola, excelente!!! Cómo se haría para una matriz de presencia ausencia con Jaccard?? Dónde tendría que incluir este método de Jaccard??

    • @PabloVallejoMedina
      @PabloVallejoMedina  4 роки тому

      Umhh muy buena pregunta. Creo que sería algo como...
      Jmatrix

  • @2u15A
    @2u15A Рік тому

    genio. gracias

  • @andrealara4490
    @andrealara4490 4 роки тому

    Cuándo subes uno de PLS?
    Excelente explicación. Gracias

    • @PabloVallejoMedina
      @PabloVallejoMedina  4 роки тому +1

      Hola muchas gracias, a ver si el covid me permite volver a grabar pronto. ;)

  • @adventureaf9549
    @adventureaf9549 2 роки тому

    Holaaa , estoy ingresando al mundo de la estadística y tambien en R; me han servido mucho tus videos, queria preguntar si tengo una base de datos con valores de 0 y 1 (binarias) tambien puedo aplicar este tipo de analisis, o sea claramente debo escalarlos ... pero podría ?

    • @PabloVallejoMedina
      @PabloVallejoMedina  2 роки тому

      Hola, pues en teoría no. Pero siempre depende un poco de si los resultados tienen sentido. Yo elegiría un cluster más robusto para estos casos. K-medioids¿+??

    • @adventureaf9549
      @adventureaf9549 2 роки тому

      @@PabloVallejoMedina Pues estoy pensando en hacerlo por el método de Ward y distancia Gower , ya que tengo variables binarias y cuantitativas . y quisiera preguntarte si conoces la función para incluir la distancia Gower? porque estuve intentando con " daisy" y no me da .

    • @PabloVallejoMedina
      @PabloVallejoMedina  2 роки тому

      @@adventureaf9549 Hola, ni idea es algo muy específico ya.

  • @leiretorices5014
    @leiretorices5014 3 роки тому

    Gracias por el vídeo!:)

  • @miguelfranciscogalvancabel6402
    @miguelfranciscogalvancabel6402 4 роки тому

    Que tal Pablo, espero que estés bien. Me surge una duda básica. En las gráficas donde se agrupan los clusteres obtenidos, se muestran cada caso (Estados) como un punto dentro de un plano, eje x y eje y. Mi duda es cómo es que cada estado toma una posición en el plano si las variables que se están considerando para hacer el análisis de cluster son más de dos. La posición dentro del plano de cada caso, es muy importante para el análisis, mi duda es que si estamos creando clústeres a partir de mas de dos variables, como determinamos la ubicación del caso dentro del plano.
    Saludos cordiales

    • @PabloVallejoMedina
      @PabloVallejoMedina  4 роки тому +1

      Por qué los planos no son varianzas o variables. SOn distancias... distancias euclideas.... aquí te lo explican mejor que yo ;) ua-cam.com/video/4b5d3muPQmA/v-deo.html

    • @miguelfranciscogalvancabel6402
      @miguelfranciscogalvancabel6402 4 роки тому

      @@PabloVallejoMedina Muchas gracias, Pablo. Me ha servido mucho. Ahora mismo estoy haciendo un ejemplo y quiero estandarizar las variables de un df, pero no quiero estandarizar todas sino solo algunas. cómo puedo seleccionar las variables que quiero estandarizar?
      Estoy utilizando esta función, pero me estadariza todas las variables.
      df

  • @estefaniarellanocontreras2474
    @estefaniarellanocontreras2474 2 роки тому

    Hola quisiera agregarle a la función fviz_cluster los colores no que me los genere aleatoria mente como seria?

    • @PabloVallejoMedina
      @PabloVallejoMedina  2 роки тому

      Hola
      fviz_cluster(res_hcpc, ) +
      scale_colour_manual(values = c("darkgreen", "orange", "red")) +
      scale_fill_manual(values = c("darkgreen", "orange", "red"))

  • @wellingstonfeliz9259
    @wellingstonfeliz9259 2 роки тому

    El Rstudio se me congela siempre que ejecuto esta linea de codigo: fviz_cluster(k2, data = df, ellipse.type = "euclid",repel = TRUE,star.plot = TRUE)

    • @PabloVallejoMedina
      @PabloVallejoMedina  2 роки тому +1

      Son cálculos computacionalmente complejos y representaciones gráficas pesadas. Prueba a apagarle el repel = TRUE.

  • @enriquep4857
    @enriquep4857 2 роки тому

    ¿Para variables nominales cómo aplicarias estas funciones? Me refiero a que tengo datos de tipo (0,1) y (0,1,2,3,4). Por ejemplo Sexo (0,1), numero de tumores en grupos (0, 1,2,3,4) siendo 0 nada y 4 muchas metástasis. No encuentro nada al respecto... ya que kmeans se necesitan variables numéricas.

    • @PabloVallejoMedina
      @PabloVallejoMedina  2 роки тому +1

      Te toca buscar un clúster robusto. Sí no todas las variables son categóricas Kmedioids te podría servir (Tengo video), pero asegúrate que sea coherente. Sino hay algunos otros interesantes.

    • @sergicozarbadia8831
      @sergicozarbadia8831 2 роки тому

      Hola Enrique, me pasa lo mismo... Lo conseguiste solucionar?

  • @emilianoguisamonde2498
    @emilianoguisamonde2498 3 роки тому

    Buenos días Pablo, como estas? Te hago una pregunta, cuando quiero usar la función fviz_cluster para plotear como también la función fviz_nbcluster para conocer el numero de clusters, me salta el siguiente error:
    "Error in loadNamespace(j = 0.7.4 is required"

  • @nachoeigu
    @nachoeigu 3 роки тому

    Una consulta si lo que queremos calcular es un análisis de agrupaciones por estados más seguros e inseguros no sería recomendable omitir la variable población ya que no es relevante? Saludos! Gran video

    • @PabloVallejoMedina
      @PabloVallejoMedina  3 роки тому

      Hola Nacho. Es una muy buena pregunta. Yo incluí la variable población por que quería que tuviera en cuenta en el clúster. Algo así como ciudades pequeñas seguras, grandes seguras, pequeñas peligrosas etc etc. Pero entiendo que estás planteando una nueva situación. Así que te pregunto yo a ti. Qué prefieres vivir en una ciudad de 1000 habitantes con 100 asesinatos al año o en una de 1.000.000 con 1.000 asesinatos anuales?

    • @nachoeigu
      @nachoeigu 3 роки тому

      @@PabloVallejoMedina Ahhh, ahora sí entiendo su elección. En realidad, respecto a la pregunta, me sería indistinto xq la probabilidad de sufrirlo sería la misma tanto para una ciudad y otra xq la tasa sería la misma.

    • @PabloVallejoMedina
      @PabloVallejoMedina  3 роки тому

      @@nachoeigu No para nada. En una ciudad de 1.000 habitantes con 100 muertes al año hay un 10% de homicidios. una de 1.000.000 con 1000 del 0,1 ;)

  • @Alejandro-zk7mo
    @Alejandro-zk7mo 3 роки тому

    hola Pablo Vallejo el grafico de distancia me parece que está mal explicado en el minuto 4 maso menos... el color rojo indica un nivel alto de disimilitud si no me equivoco y los valores azules( cercanos a ceros ) indican que hay mayor similitud entre los datos, es decir que están más correlacionados

    • @PabloVallejoMedina
      @PabloVallejoMedina  3 роки тому +1

      Totalmente, es una matriz de covarianzas y no de correlaciones. No sé en qué estaría yo. Ya mismo subo una alclaración en los subtítulos.

  • @marceloaguirre3709
    @marceloaguirre3709 2 роки тому

    Hola ! muy buenos tus videos. Ya me suscribí.
    Cuando quiero utilizar la función fviz_nbclust(resnumclust) me sale el siguiente error = Error in if (class(best_nc) == "numeric") print(best_nc) else if (class(best_nc) == : the condition has length > 1
    Como podría solucionarlo ?
    Saludos

    • @PabloVallejoMedina
      @PabloVallejoMedina  2 роки тому

      Parece que es un error de la función, en algunos casos extraños da ese error. Aquí tienes una posible solución, pero no va a ser fácil. stackoverflow.com/questions/72075707/rstudio-error-with-the-fviz-nbclust-function

  • @diegomayusa5528
    @diegomayusa5528 3 роки тому

    Eres el mejor bro

  • @josejaviermarticamarasa5744
    @josejaviermarticamarasa5744 4 роки тому

    Hola Pablo. En este Dataset, vemos los nombres de los estados como filas. Como agrupamos si no tenemos esta informacion en las filas?

  • @B3NORX2
    @B3NORX2 3 роки тому

    Tengo una duda, esta rutina se puede hacer con dataframes con variables mixtas? o se puede hacer una matriz de disimilitud de estas variables mixtas (p.ej. usando gower) y una vez obtenida la matriz se puede hacer la rutina de NBclust ? Saludos desde Mexico!

  • @Javigarcia222
    @Javigarcia222 4 роки тому

    Una pregunta¿Cuando se hacen los clusters todas las variables esas tienen la misma importancia? Quiero decir lo mismo una variable como los asesinatos es mucho más relevante a la hora de tomar decisiones que pongamos los asaltos.¿hay alguna forma de asignar mayor peso a variables o todas tienen el mismo?

    • @PabloVallejoMedina
      @PabloVallejoMedina  4 роки тому +2

      Hola, los clúster son para clasificar variables o casos. No son ponderables pues lo único que te dicen es que Nebraska es pequeña, con pocos asesinatos, violaciones y robos como otros XXX estados. Si quieres los puedes agrupar en un clúster. POr otro lado, nuevo méxico es una porquería como estos otros estados.... XXXX. Si después quisieras predecir calidad de vida a partir de estas variables, la propia regresión te ponderará la importancia de las VD.

  • @pereznebra
    @pereznebra 3 роки тому

    Estimado Pablo, queria preguntar una cosa a respecto de los clusters. He visto que usted a partir del minuto 11 más o menos explica y incluye una "palette" de colores. Lo que todavía no logré hacer es tener los clusters 1, 2 , 3 y 4 de colores standard. A ver si me explico: Yo quería hacer comparaciones entre clusters con variables diferentes, así que el cluster más alto tendria un color y el más bajo de otro. Resulta que el R decide los colores y todavía no he visto como. Qué hice, llevé al ggplot2 y lo hice ahí, pero quería saber si hay como hacerlo directamente. Gracias.

    • @PabloVallejoMedina
      @PabloVallejoMedina  3 роки тому

      Hola Amalía no se con que función pero los colores los puedes personalizar. De hecho tengo un chupito reciente de paletas de colores donde explico cómo.

  • @yeisonsantamaria5298
    @yeisonsantamaria5298 4 роки тому

    Hola Pablo, excelente video, me quedó todo mucho más claro. He tenido un inconveniente, cuando voy a graficar los clústers con la función fviz_clusterm "Error in loadNamespace(i, c(lib.loc, .libPaths()), versionCheck = vI[[i]]) : namespace ‘vctrs’ 0.2.4 is already loaded, but >= 0.3.0 is required". Podrías orientarme para saber que estoy haciendo mal?. Muchas gracias

    • @PabloVallejoMedina
      @PabloVallejoMedina  4 роки тому +1

      Creo que tienes desactualizada alguna dependencia. Más concretamente vctrs .Actualiza R si lo tienes en la versión antigua. POr que ya empiezan a molestar muchas dependencias con el 3.6

    • @yeisonsantamaria5298
      @yeisonsantamaria5298 4 роки тому

      @@PabloVallejoMedina Ya hice la actualización a 4.0.3 y me sigue saliendo el mismo error. Igual muchas gracias por tu respuesta

    • @PabloVallejoMedina
      @PabloVallejoMedina  4 роки тому

      @@yeisonsantamaria5298 actualiza el paquete de la dependencia que te pide.

  • @aronladerag4759
    @aronladerag4759 4 роки тому

    Buenas, estimado una pregunta, la data USArrest tiene 4 variables numéricas y 1 categórica?. Lo pregunto porque el srt y y el head siempre me dice que hay 4 variables, entonces que sucede con la variable ESTADOS?

    • @PabloVallejoMedina
      @PabloVallejoMedina  4 роки тому

      Hola, Estados no es una variable. Es el nombre de las filas. ;)

  • @mariagranitto2789
    @mariagranitto2789 3 роки тому

    Muchas gracias Pablo por tu aporte! te hago una consulta, en mi caso tengo mi matriz cargada como csv en R. Cada columna es un sitio de muestreo y cada fila es una sp. Quiero hacer un cluster para ver que sitios son mas similares entre si en relacion a la comunidad de spp de algas. los datos que tengo son abundancias pero hay muchas celdas vacias (con cero) porque no todas las sp fueron encontradas en todos los sitios. Este analisis de cluster que vos mostraste es adecuado para estos datos? Saludos y muchas gracias,

    • @PabloVallejoMedina
      @PabloVallejoMedina  3 роки тому

      Hola, sí creo que no habría problema. Prueba a ver cómo te va ;)

  •  4 роки тому

    La intro del mango hizo mucha falta! Muy buen video

    • @PabloVallejoMedina
      @PabloVallejoMedina  4 роки тому

      Solo tenía un platano y dos naranjas. No quería hacer un cluster con eso ;)

    •  4 роки тому +1

      @@PabloVallejoMedina ja muy bien!

  • @giovannicamposromero8857
    @giovannicamposromero8857 3 роки тому

    Estimado cuando importo una data local me sale el siguiente error al aplicar scale a la df:
    df

    • @PabloVallejoMedina
      @PabloVallejoMedina  3 роки тому +1

      Hola, debes de tener variables no numéricas. ëchale un ojo al otro video de cluster con marvel que tengo y ahí te lo explico. Un saludo.