library(readr)
## Registered S3 methods overwritten by 'tibble':
## method from
## format.tbl pillar
## print.tbl pillar
EmojisFood <- read_csv("EmojisFood.csv")
## Parsed with column specification:
## cols(
## .default = col_double(),
## name = col_character(),
## emoji = col_character()
## )
## See spec(...) for full column specifications.
#Escalo las variables numéricas
emojiNorm<-scale(EmojisFood[,c(3:35)])
#Asignación de nombres
rownames(emojiNorm)<-EmojisFood$name
#Calculo distancias
emojiDistancia<- dist(emojiNorm[,])
#Agrupamiento jerárquico
clusters<-hclust(emojiDistancia)
##para que aparezcan los emojis:
#install.packages("stringi")
library(stringi)
labels <- EmojisFood[,c(1,2)]
# function para adicionar datos de labels
trimEmojiCode <- function (df,order){
for(i in 1:nrow(df)){
index <- order[i]
df[index,3] <- order[i]
tmp <- strsplit(stringi::stri_escape_unicode(df[index,2]),"\\\\U000")
df[i,4] <- tmp[[1]][2]
}
colnames(df)<- c('name','emoji','id','code')
return (df)
}
labels <- trimEmojiCode(EmojisFood[,c(1,2)], clusters$order)
#dendrograma
#install.packages('ggimage')
library(ggimage)
## Warning: package 'ggimage' was built under R version 4.0.5
## Loading required package: ggplot2
library(ggdendro)
## Warning: package 'ggdendro' was built under R version 4.0.5
dendrograma <- ggdendrogram(clusters, size=2)
dendrograma <- dendrograma + geom_emoji(data=labels, aes(id,-0.3,image=code),size=0.02)
dendrograma<-dendrograma+geom_hline(yintercept=13,color="red")
dendrograma<-dendrograma+annotate("text",label="corte",x=-1,y=14,color="red")
dendrograma
