Clustering ierarhic: Pregătirea pentru explorare
Acum că ai creat o posibilă grupare pentru datele oes, înainte de a putea explora aceste clustere cu ggplot2, va trebui să transformi matricea de date oes într-un data frame ordonat, în care fiecărei ocupații îi este atribuit clusterul corespunzător.
Acest exercițiu face parte din cursul
Analiza clusterelor în R
Instrucțiuni pentru exercițiu
- Creează data frame-ul
df_oesdin matricea de dateoes, asigurându-te că stochezi numele rândurilor ca o coloană (foloseșterownames_to_column()din bibliotecatibble). - Construiește vectorul de atribuire a clusterelor
cut_oesfolosindcutree()cuh = 100,000. - Adaugă atribuirile de clustere ca o coloană
clusterîn data frame-uldf_oesși salvează rezultatele într-un nou data frame numitclust_oes. - Folosește funcția
pivot_longer()din bibliotecatidyr()pentru a restructura datele într-un format compatibil cu analiza ggplot2 și salvează data frame-ul ordonat cagathered_oes.
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
dist_oes <- dist(oes, method = 'euclidean')
hc_oes <- hclust(dist_oes, method = 'average')
library(tibble)
library(tidyr)
# Use rownames_to_column to move the rownames into a column of the data frame
df_oes <- rownames_to_column(as.data.frame(___), var = 'occupation')
# Create a cluster assignment vector at h = 100,000
cut_oes <- cutree(___, h = ___)
# Generate the segmented oes data frame
clust_oes <- mutate(___, cluster = ___)
# Create a tidy data frame by gathering the year and values into two columns
gathered_oes <- pivot_longer(data = ___,
cols = -c(occupation, cluster),
names_to = "year",
values_to = "mean_salary" )