library(dplyr)
## Warning: package 'dplyr' was built under R version 4.1.3
## 
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
## 
##     filter, lag
## The following objects are masked from 'package:base':
## 
##     intersect, setdiff, setequal, union
PATH <-"https://raw.githubusercontent.com/guru99-edu/R-Programming/master/computers.csv"
df <- read.csv(PATH) %>%
  select(-c(X, cd, multi, premium))
glimpse(df)
## Rows: 6,259
## Columns: 7
## $ price  <int> 1499, 1795, 1595, 1849, 3295, 3695, 1720, 1995, 2225, 2575, 219~
## $ speed  <int> 25, 33, 25, 25, 33, 66, 25, 50, 50, 50, 33, 66, 50, 25, 50, 50,~
## $ hd     <int> 80, 85, 170, 170, 340, 340, 170, 85, 210, 210, 170, 210, 130, 2~
## $ ram    <int> 4, 2, 4, 8, 16, 16, 4, 2, 8, 4, 8, 8, 4, 8, 8, 4, 2, 4, 4, 8, 4~
## $ screen <int> 14, 14, 15, 14, 14, 14, 14, 14, 14, 15, 15, 14, 14, 14, 14, 14,~
## $ ads    <int> 94, 94, 94, 94, 94, 94, 94, 94, 94, 94, 94, 94, 94, 94, 94, 94,~
## $ trend  <int> 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, ~
summary(df)
##      price          speed              hd              ram        
##  Min.   : 949   Min.   : 25.00   Min.   :  80.0   Min.   : 2.000  
##  1st Qu.:1794   1st Qu.: 33.00   1st Qu.: 214.0   1st Qu.: 4.000  
##  Median :2144   Median : 50.00   Median : 340.0   Median : 8.000  
##  Mean   :2220   Mean   : 52.01   Mean   : 416.6   Mean   : 8.287  
##  3rd Qu.:2595   3rd Qu.: 66.00   3rd Qu.: 528.0   3rd Qu.: 8.000  
##  Max.   :5399   Max.   :100.00   Max.   :2100.0   Max.   :32.000  
##      screen           ads            trend      
##  Min.   :14.00   Min.   : 39.0   Min.   : 1.00  
##  1st Qu.:14.00   1st Qu.:162.5   1st Qu.:10.00  
##  Median :14.00   Median :246.0   Median :16.00  
##  Mean   :14.61   Mean   :221.3   Mean   :15.93  
##  3rd Qu.:15.00   3rd Qu.:275.0   3rd Qu.:21.50  
##  Max.   :17.00   Max.   :339.0   Max.   :35.00
rescale_df <- df %>%
  mutate(price_scal = scale(price),
         hd_scal = scale(hd),
         ram_scal = scale(ram),
         screen_scal = scale(screen),
         ads_scal = scale(ads),
         trend_scal = scale(trend)) %>%
  select(-c(price, speed, hd, ram, screen, ads, trend))
#kmeans(df,K)
#arguments:
#df: dataset used to run the algorithm
#k: Number of clusters
set.seed(2345)
library(animation)
## Warning: package 'animation' was built under R version 4.1.3
#kmeans.ani(rescale_df[2:3], 3)

pc_cluster <-kmeans(rescale_df, 5)

kmean_withinss <- function(k) {
  cluster <- kmeans(rescale_df, k)
  return (cluster$tot.withinss)
}
kmean_withinss(2)
## [1] 27400.21
# Set maximum cluster 
max_k <-20 
# Run algorithm over a range of k 
wss <- sapply(2:max_k, kmean_withinss)

# Create a data frame to plot the graph
elbow <-data.frame(2:max_k, wss)
# Plot the graph with gglop
library(ggplot2)
## Warning: package 'ggplot2' was built under R version 4.1.3
ggplot(elbow, aes(x = X2.max_k, y = wss)) +
  geom_point() +
  geom_line() +
  scale_x_continuous(breaks = seq(1, 20, by = 1))

pc_cluster_2 <-kmeans(rescale_df, 7)

pc_cluster_2$cluster
##    [1] 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 6 4 4 4 4 4 4 4 4 6 4 4 4 4
##   [38] 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 6 6 4 4 4 4 4 4 4 4 4 4 4 4 6 4 4
##   [75] 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 6 4 4 4 4 4 4 4 4 4 4 4 4 4 4 6 4 4 4 4 4
##  [112] 4 4 4 4 6 4 4 4 4 4 4 4 4 4 4 6 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
##  [149] 4 4 4 4 4 4 4 4 4 4 6 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 6 4 4 4 6 4 4 4
##  [186] 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 6 4 4 4 4 4 4 4 4 4 6 4 4 6 4 4 4 4 4 6 4
##  [223] 4 4 4 4 4 4 4 6 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 6 4 4
##  [260] 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
##  [297] 4 4 4 4 4 4 4 4 4 4 6 4 4 4 4 4 4 4 4 4 4 6 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
##  [334] 4 4 4 4 4 6 6 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 6 4 4 4 4 6 4 4 4 4 4 4
##  [371] 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
##  [408] 4 4 4 4 4 4 4 6 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 6 4 6 4 6 4 4 4
##  [445] 4 4 4 4 4 4 4 4 4 4 4 4 6 4 6 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
##  [482] 4 4 4 4 4 4 4 6 4 1 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 6 4 4 4 4 4 4 4 6 4 4
##  [519] 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 5 3 4 3
##  [556] 5 4 6 3 4 6 4 4 4 4 4 4 5 4 4 4 4 4 4 4 6 4 3 4 4 4 4 6 4 6 4 3 4 4 4 4 4
##  [593] 3 4 4 5 4 4 4 4 4 3 4 3 5 5 4 5 4 4 3 3 4 4 4 1 4 4 4 5 6 4 4 4 4 3 4 4 4
##  [630] 4 4 4 4 5 4 4 4 5 4 4 5 6 4 3 4 6 3 4 4 4 4 4 4 4 4 4 6 5 4 4 6 4 4 4 4 3
##  [667] 3 4 4 4 4 3 3 3 4 4 6 4 4 4 6 5 4 3 4 4 6 4 4 3 4 4 4 3 5 4 4 4 3 5 4 4 4
##  [704] 3 4 4 3 4 4 4 3 4 5 3 5 5 3 6 3 6 1 5 3 5 5 5 5 3 3 5 5 5 5 5 5 5 5 5 3 3
##  [741] 3 5 5 5 5 6 5 5 5 3 5 6 5 3 6 5 5 6 5 5 5 5 5 3 5 5 3 5 5 3 5 5 6 3 3 3 5
##  [778] 5 3 3 5 5 3 3 5 5 5 3 5 3 5 3 5 6 5 3 3 5 3 3 3 3 5 6 5 3 5 3 3 5 3 5 5 3
##  [815] 5 5 3 5 5 5 3 3 3 3 3 5 5 5 5 3 3 5 5 5 5 5 3 3 5 3 3 3 3 3 3 5 5 5 5 5 5
##  [852] 3 3 5 3 3 5 5 5 3 5 5 5 5 3 5 5 3 3 3 5 5 5 5 5 3 5 5 5 5 3 6 5 3 3 5 3 3
##  [889] 5 5 3 3 5 5 6 5 3 3 5 3 1 3 3 5 3 5 5 5 3 5 3 5 5 5 5 5 5 5 5 5 3 5 3 5 5
##  [926] 5 5 5 3 5 5 3 5 5 5 6 3 3 5 5 5 3 5 5 3 5 5 3 5 5 3 3 5 5 3 3 5 3 5 3 3 5
##  [963] 3 5 3 3 5 5 5 3 3 3 6 5 3 3 5 5 5 5 5 1 3 5 3 3 5 5 5 5 5 5 5 1 3 3 3 5 6
## [1000] 5 5 5 3 6 5 5 5 6 5 6 5 6 5 5 5 5 3 5 5 5 3 5 3 5 3 3 5 5 5 3 3 5 3 5 5 6
## [1037] 5 3 3 3 3 5 1 5 5 5 5 3 1 5 3 3 5 5 5 3 5 5 5 3 5 5 5 5 3 5 5 6 5 3 3 5 5
## [1074] 5 5 3 5 3 3 5 5 3 5 5 3 3 3 3 3 5 3 5 5 3 3 5 3 5 1 5 5 1 5 5 5 5 3 5 3 3
## [1111] 5 5 5 3 5 5 3 3 3 5 3 5 1 5 5 3 3 3 5 3 5 5 3 5 5 6 5 5 3 5 5 6 6 3 6 3 3
## [1148] 5 5 3 3 3 5 3 6 3 3 5 6 5 3 6 3 3 5 3 5 5 5 3 5 3 3 5 5 6 1 3 3 5 5 3 5 6
## [1185] 5 5 3 5 5 5 5 5 5 5 5 3 5 5 3 5 5 6 3 6 5 5 6 3 5 3 5 5 5 5 3 5 3 3 5 5 3
## [1222] 5 5 5 3 3 5 5 3 6 5 3 5 5 5 3 5 5 5 5 5 5 5 5 5 5 3 5 5 3 5 5 5 6 5 3 3 5
## [1259] 3 3 5 3 3 5 5 3 3 3 3 5 5 3 5 3 5 6 3 5 5 3 5 5 3 3 5 5 3 5 5 5 5 5 3 5 5
## [1296] 5 3 5 3 3 5 5 5 5 3 3 3 3 6 5 5 5 3 6 5 5 5 5 3 5 5 5 3 5 3 5 3 5 5 5 5 5
## [1333] 5 5 3 6 3 5 5 6 3 3 3 5 5 3 3 5 5 5 3 6 3 5 3 5 3 5 5 3 5 3 5 3 3 5 3 5 5
## [1370] 3 5 5 5 3 5 3 5 5 5 3 5 3 5 5 5 6 3 6 5 5 5 5 5 5 6 5 5 3 5 5 5 5 5 3 3 3
## [1407] 3 3 3 5 3 6 5 5 3 5 5 5 3 3 5 5 5 5 5 5 5 5 5 5 5 3 3 5 3 5 5 5 3 3 6 5 3
## [1444] 5 3 6 5 6 5 3 3 5 3 5 3 5 3 3 3 3 3 5 5 3 5 3 3 3 5 5 3 5 5 5 3 3 3 6 5 3
## [1481] 5 3 3 3 3 5 5 3 3 5 3 3 3 5 5 3 3 5 5 5 5 3 6 5 5 3 1 5 5 6 3 5 5 5 3 3 3
## [1518] 5 3 3 5 3 5 5 1 5 5 3 3 3 5 5 6 5 3 5 5 5 5 5 5 5 6 3 5 3 5 5 5 3 3 5 5 5
## [1555] 5 3 5 3 3 3 3 3 5 5 3 6 3 5 3 5 5 5 3 5 3 5 5 5 3 6 5 5 5 5 5 3 6 3 3 3 5
## [1592] 5 5 6 5 5 6 3 3 5 6 5 3 5 3 3 5 3 5 5 1 5 5 6 5 5 3 3 5 3 5 5 6 5 3 5 5 3
## [1629] 3 5 5 5 5 5 5 5 5 3 3 5 5 3 3 3 5 5 5 5 5 5 5 6 5 3 3 5 5 5 3 5 3 5 3 5 3
## [1666] 3 3 5 3 3 3 5 3 5 5 5 5 5 3 5 3 3 5 5 5 5 5 5 1 5 5 3 5 5 5 3 6 5 3 5 6 5
## [1703] 5 3 3 5 3 3 5 3 5 6 6 3 5 5 5 3 5 5 3 5 6 5 5 5 3 5 5 5 3 5 3 6 5 5 3 3 3
## [1740] 6 3 5 5 3 3 5 5 5 3 5 3 3 5 3 3 3 3 5 5 3 5 5 6 3 5 3 3 6 3 3 5 5 3 5 3 3
## [1777] 5 3 5 5 5 5 5 5 1 5 3 5 3 3 3 3 5 5 3 5 3 5 5 5 3 3 3 5 5 3 6 3 5 3 5 6 5
## [1814] 6 5 3 3 6 5 6 3 5 3 5 5 5 6 3 3 3 3 5 5 6 3 1 6 3 5 6 6 3 6 3 5 5 5 3 3 5
## [1851] 3 5 5 3 3 5 3 3 3 3 5 3 5 5 5 3 6 3 3 5 3 5 5 5 3 5 5 5 3 5 5 5 3 5 3 5 5
## [1888] 5 5 6 5 5 5 5 3 3 3 3 5 5 3 5 5 5 3 5 5 5 5 3 5 5 5 5 3 5 3 5 5 5 5 3 5 3
## [1925] 3 5 3 5 5 5 3 3 5 3 3 5 5 5 3 5 5 5 5 5 3 6 5 5 5 5 5 3 3 5 6 3 5 6 5 5 3
## [1962] 5 6 5 3 5 5 3 3 5 5 6 3 3 5 5 5 5 5 5 3 5 5 6 3 5 5 5 5 5 5 1 5 3 5 5 3 3
## [1999] 5 6 3 3 5 3 3 5 3 5 3 3 3 5 5 5 3 3 5 3 5 5 5 3 5 3 5 3 3 5 3 3 3 6 6 5 5
## [2036] 5 3 3 3 3 5 3 1 3 3 3 3 5 5 5 3 5 3 5 6 5 5 5 5 5 5 1 5 5 5 6 5 3 5 3 3 5
## [2073] 3 3 3 3 3 5 5 5 3 5 5 5 3 3 3 3 5 3 5 5 5 3 5 5 1 3 5 5 5 3 3 3 3 3 3 5 5
## [2110] 3 3 3 5 5 5 5 5 5 3 3 5 6 3 5 5 3 3 6 5 5 5 5 3 3 5 3 6 5 5 5 5 3 3 5 5 5
## [2147] 3 5 1 6 5 6 3 5 6 3 5 5 3 6 5 3 5 5 6 5 3 5 3 5 3 6 5 5 5 5 3 5 6 5 3 5 3
## [2184] 5 5 5 3 5 6 5 5 5 3 5 5 3 3 6 5 5 5 6 3 5 1 5 3 5 5 6 5 3 5 3 5 3 5 5 3 6
## [2221] 5 3 5 6 3 3 6 5 3 5 5 5 5 5 5 5 5 5 3 5 3 5 3 5 3 3 5 5 3 6 3 5 3 3 3 5 5
## [2258] 5 5 5 3 5 5 5 5 5 3 3 5 6 5 3 5 5 5 5 5 3 3 3 5 1 3 3 5 5 5 3 6 3 5 5 5 5
## [2295] 5 3 5 6 3 5 5 6 3 3 5 3 3 5 3 5 5 5 3 3 5 5 5 5 5 5 5 5 5 5 5 5 3 3 5 5 3
## [2332] 3 5 3 3 6 3 5 3 5 3 3 6 5 5 3 5 5 5 3 6 5 5 5 5 3 5 3 5 5 5 3 3 5 3 5 5 5
## [2369] 5 3 3 5 3 6 5 5 3 5 5 5 3 3 3 5 3 5 3 3 5 5 5 5 5 3 5 6 5 3 5 5 5 5 3 3 3
## [2406] 5 3 3 5 5 3 3 5 5 5 5 3 5 3 5 3 5 3 6 3 5 5 3 5 3 5 5 3 5 5 3 5 3 3 5 5 3
## [2443] 5 3 5 5 3 5 3 5 5 3 5 5 5 3 5 3 3 3 5 3 3 5 5 3 5 5 1 3 5 3 3 5 5 5 6 5 5
## [2480] 3 3 3 6 5 5 3 5 5 3 5 5 5 5 5 5 3 5 6 5 5 3 5 5 3 5 5 5 5 3 3 5 3 3 3 5 6
## [2517] 5 3 3 3 3 3 5 5 3 5 5 5 3 3 3 3 5 5 3 5 5 5 5 5 5 3 3 3 5 3 3 6 3 5 3 3 5
## [2554] 5 3 5 5 5 5 5 3 5 5 5 5 5 5 6 5 5 5 3 3 3 5 5 3 6 5 6 5 3 3 5 5 5 3 3 5 5
## [2591] 5 5 3 5 3 5 5 5 5 3 5 6 3 5 5 3 3 6 3 3 3 5 3 6 6 3 5 5 3 3 3 3 5 5 6 6 6
## [2628] 5 5 3 5 5 3 5 5 5 3 3 5 5 5 5 5 6 5 3 3 5 5 5 3 3 5 3 5 3 5 5 5 3 5 5 3 5
## [2665] 5 5 3 3 3 5 3 3 3 5 5 3 5 3 3 6 3 5 6 6 3 6 5 3 5 5 3 5 5 3 6 6 5 3 3 5 3
## [2702] 5 3 3 3 5 5 3 5 3 5 5 5 3 3 6 5 5 5 5 5 5 5 3 3 5 3 3 3 5 3 5 5 3 5 5 6 5
## [2739] 3 3 5 5 5 5 5 5 6 5 5 3 5 3 5 6 6 5 5 5 3 5 5 5 3 5 3 3 3 3 5 5 5 5 5 5 5
## [2776] 3 3 5 3 5 5 3 5 5 3 3 5 3 5 3 3 3 3 5 3 3 6 5 3 5 5 3 5 5 3 5 5 3 5 5 3 5
## [2813] 5 3 3 3 5 3 3 6 3 3 3 5 3 5 3 5 3 5 5 3 6 5 3 5 3 5 5 3 5 3 5 6 3 5 6 5 5
## [2850] 5 5 5 5 5 5 3 5 5 3 3 3 5 6 3 5 3 5 5 3 5 3 5 5 5 3 5 3 5 5 5 3 5 3 5 5 5
## [2887] 3 3 5 6 5 5 3 3 5 3 5 5 3 3 5 6 5 5 5 5 3 6 3 3 3 3 6 3 3 3 5 5 5 5 5 5 3
## [2924] 6 5 5 3 3 5 3 5 3 6 5 5 5 3 5 6 5 3 5 5 3 6 3 3 6 5 5 3 5 5 5 5 5 3 5 5 3
## [2961] 5 3 3 5 5 3 3 5 3 5 5 3 6 5 5 3 6 3 5 6 3 5 5 3 5 3 5 5 5 5 5 3 5 5 3 3 5
## [2998] 3 5 3 5 5 6 5 3 3 5 5 5 5 3 6 3 3 3 5 3 3 6 5 5 3 5 3 3 5 3 5 5 5 3 3 5 5
## [3035] 3 5 5 5 5 5 5 5 3 5 3 3 5 5 5 5 5 5 5 5 5 5 5 6 5 6 3 5 3 5 6 3 3 5 5 5 3
## [3072] 5 3 5 5 3 3 3 5 5 5 5 3 5 5 5 3 5 5 5 6 3 3 3 5 3 3 3 5 5 5 3 5 3 3 5 3 3
## [3109] 3 5 5 5 3 5 3 3 5 5 5 3 3 3 6 6 5 3 5 5 5 5 3 3 5 5 5 6 3 5 3 5 5 5 3 5 3
## [3146] 5 1 3 5 3 5 6 5 3 5 5 6 3 5 3 5 5 5 5 3 3 5 5 3 5 6 3 3 5 5 6 3 1 5 5 5 5
## [3183] 5 5 3 5 5 5 3 5 5 5 6 3 5 3 6 5 5 3 5 5 5 6 3 5 5 6 3 5 5 5 5 5 5 6 6 5 5
## [3220] 5 5 3 5 5 3 3 3 5 5 5 1 3 5 3 5 5 5 5 3 5 5 5 5 5 5 3 5 3 6 6 3 5 3 5 5 5
## [3257] 5 5 5 5 6 3 5 5 6 5 5 3 5 6 5 3 3 5 5 3 3 6 3 3 5 5 5 3 3 3 5 5 3 5 3 5 3
## [3294] 3 5 5 5 3 3 5 5 5 3 5 5 5 5 5 5 3 3 3 5 6 6 3 3 3 3 3 5 3 3 3 5 5 3 5 3 3
## [3331] 5 3 3 3 5 5 3 5 3 3 5 5 3 5 6 5 5 3 5 3 6 5 3 3 6 3 5 3 5 5 3 5 3 3 5 3 5
## [3368] 5 5 5 3 3 3 5 5 5 6 5 5 3 3 5 5 5 5 5 3 5 3 5 3 5 3 3 3 3 5 5 3 5 3 3 5 3
## [3405] 5 3 5 5 5 5 3 5 3 5 5 5 3 5 3 3 5 5 3 3 3 3 5 6 5 5 5 5 3 5 5 5 5 5 3 5 6
## [3442] 5 5 3 5 5 5 3 5 3 5 3 5 3 3 5 5 5 5 3 5 5 3 5 5 5 5 5 5 5 5 5 3 5 3 5 5 5
## [3479] 3 5 3 6 6 5 5 3 5 5 3 5 5 5 5 3 5 3 3 3 5 3 5 5 5 3 6 5 3 5 3 5 3 3 5 5 5
## [3516] 5 3 3 3 6 5 3 5 3 5 5 5 3 6 5 6 1 5 3 3 5 3 6 5 3 3 6 3 3 6 5 3 5 6 3 6 3
## [3553] 3 3 3 6 5 6 5 3 3 5 5 6 5 5 5 5 3 3 3 3 3 3 3 3 3 5 5 3 5 3 5 6 3 6 3 5 3
## [3590] 6 3 3 3 3 3 5 3 5 3 5 5 3 3 3 3 5 3 5 5 5 5 5 3 3 6 5 6 5 5 6 3 3 6 3 3 3
## [3627] 5 3 3 3 3 3 3 3 3 3 5 3 3 5 5 3 3 3 5 3 3 5 1 5 3 5 6 5 6 3 3 5 5 5 5 5 3
## [3664] 3 5 3 6 5 5 6 3 6 5 5 6 3 5 3 3 3 5 5 3 3 5 3 5 5 3 6 5 5 5 3 5 5 3 5 3 3
## [3701] 5 3 3 5 5 3 3 5 3 3 5 5 5 5 3 3 6 3 5 5 5 5 5 3 5 5 3 3 5 3 3 5 3 3 5 5 3
## [3738] 5 3 5 3 6 3 3 5 5 5 5 3 3 3 1 3 5 3 6 3 3 5 5 3 3 3 5 6 3 5 6 5 3 3 1 5 3
## [3775] 5 3 6 3 3 5 5 5 1 1 5 3 5 3 5 5 1 5 5 3 6 1 1 3 5 6 5 5 1 5 3 5 3 5 5 1 5
## [3812] 5 6 3 6 3 5 3 5 3 6 6 5 3 5 1 3 1 6 5 5 3 5 1 6 3 3 3 3 5 3 5 3 6 5 5 3 5
## [3849] 5 3 3 3 1 1 3 5 5 6 5 3 5 5 1 5 6 5 5 5 3 6 3 5 6 1 3 3 5 3 1 1 3 3 5 3 3
## [3886] 5 5 5 6 5 1 5 3 1 3 5 6 3 5 3 1 5 5 1 1 3 3 1 5 3 3 3 5 3 6 5 5 1 5 3 1 1
## [3923] 5 3 5 5 3 5 3 5 5 5 3 3 5 6 5 3 3 3 3 3 5 3 3 3 6 5 3 3 5 6 3 3 3 5 3 1 5
## [3960] 3 3 3 5 3 6 5 5 1 5 3 5 3 5 5 5 1 3 5 3 1 5 5 5 6 5 5 5 3 6 5 6 5 3 3 3 1
## [3997] 5 3 3 5 5 6 3 6 1 6 6 5 3 3 3 5 5 3 3 6 5 5 5 3 2 1 5 2 3 1 3 2 6 5 5 2 5
## [4034] 2 2 3 5 3 3 1 5 3 3 5 3 3 3 2 2 3 5 5 3 3 3 5 3 5 3 3 5 2 2 5 3 1 6 3 3 3
## [4071] 5 5 1 6 3 3 6 3 1 2 1 5 3 5 2 5 5 6 3 1 5 6 1 3 3 5 3 3 2 1 2 3 2 5 2 5 5
## [4108] 5 5 5 3 5 5 1 5 5 3 5 2 6 5 1 2 5 3 6 6 2 1 6 3 1 2 2 2 3 3 5 3 6 3 5 3 6
## [4145] 6 2 2 5 5 5 3 1 3 5 5 3 3 5 6 1 3 5 3 5 3 3 3 6 5 1 3 5 3 3 3 5 6 5 2 1 3
## [4182] 2 5 2 5 1 5 5 5 2 3 2 1 2 6 1 3 5 1 2 1 3 1 5 5 2 3 1 3 6 5 5 6 2 1 2 3 5
## [4219] 1 2 2 1 5 5 3 6 1 6 2 5 3 3 5 1 3 3 3 6 2 1 3 2 2 5 1 5 1 3 1 5 3 5 5 3 1
## [4256] 3 5 2 5 6 1 6 5 2 5 5 6 1 6 3 3 1 5 2 5 5 2 5 1 1 1 3 6 5 3 3 5 5 5 6 5 3
## [4293] 1 5 6 2 5 1 2 6 5 3 3 5 5 5 3 5 3 1 3 5 5 6 5 1 3 5 3 5 3 1 5 1 1 3 5 2 1
## [4330] 5 1 3 5 5 5 5 1 5 5 6 1 5 5 5 3 6 5 5 1 2 1 1 5 1 6 5 3 5 1 2 5 5 2 6 5 3
## [4367] 5 2 5 5 5 1 6 5 1 3 5 5 1 3 3 6 3 5 3 1 3 5 5 5 2 3 3 3 5 5 5 2 6 1 2 6 5
## [4404] 5 3 3 1 2 3 6 1 1 5 6 3 5 5 5 5 5 5 1 5 1 3 5 1 3 1 5 5 1 1 5 3 5 6 5 6 1
## [4441] 1 5 1 5 5 3 5 2 1 5 3 1 1 3 5 6 3 1 5 1 6 3 3 2 5 2 5 3 5 5 1 5 1 5 1 1 5
## [4478] 1 3 5 3 5 5 5 3 2 5 1 2 1 6 1 5 1 2 1 2 1 6 5 2 5 1 2 5 2 5 5 2 1 5 2 5 1
## [4515] 2 6 1 5 1 6 2 1 2 2 5 2 5 2 5 1 3 2 6 1 1 5 2 1 5 5 2 2 2 2 2 2 2 2 1 1 1
## [4552] 2 1 2 2 2 2 2 1 3 2 1 2 1 2 1 5 2 1 2 6 6 2 2 2 1 6 6 2 1 1 1 3 1 2 2 2 1
## [4589] 2 2 2 2 2 5 2 2 2 2 2 2 5 2 2 2 2 1 2 2 2 1 2 1 2 3 2 2 1 5 6 2 1 5 2 2 3
## [4626] 2 5 6 1 2 2 1 6 2 1 1 3 5 2 6 2 1 1 5 2 1 2 5 6 3 1 5 2 1 5 6 2 6 2 2 2 1
## [4663] 1 2 5 2 5 2 1 5 5 1 2 5 2 1 6 6 5 2 2 2 6 2 2 6 2 5 2 1 5 2 6 2 1 1 2 2 2
## [4700] 1 3 2 1 1 6 2 2 1 1 7 2 1 6 2 6 2 2 1 2 1 1 2 2 1 2 2 2 2 1 1 1 1 2 2 2 2
## [4737] 2 2 1 1 2 2 2 1 1 2 2 2 1 2 2 2 1 1 2 6 2 1 1 2 2 2 2 2 2 2 2 1 2 1 2 2 2
## [4774] 6 2 1 2 2 1 2 2 2 2 2 2 1 2 2 1 2 2 2 2 1 2 1 2 1 2 2 2 2 2 2 2 2 6 1 2 2
## [4811] 2 2 2 2 2 2 2 2 2 1 2 1 2 2 2 2 2 2 1 2 2 2 2 1 1 1 2 1 1 2 2 1 2 2 1 2 7
## [4848] 6 1 2 1 1 2 6 1 2 1 1 1 2 1 1 2 2 2 2 2 2 1 1 2 2 1 2 2 1 2 2 2 1 2 2 2 2
## [4885] 2 6 1 6 2 2 1 2 2 6 2 2 2 2 2 3 6 1 2 2 2 2 2 1 2 2 2 1 2 2 2 2 2 2 2 2 2
## [4922] 2 2 2 2 6 2 2 2 6 2 1 2 2 1 1 2 2 1 2 1 2 2 2 2 2 2 1 2 2 6 2 2 2 2 2 2 2
## [4959] 1 2 2 1 1 2 2 2 2 2 2 1 2 2 2 1 2 2 1 2 1 2 2 2 2 1 2 1 6 1 2 2 2 1 1 2 2
## [4996] 2 2 6 2 2 2 2 2 6 2 2 1 2 1 2 2 1 2 1 2 2 2 1 2 1 1 2 1 2 2 2 1 2 2 1 2 1
## [5033] 2 2 2 1 1 2 2 2 1 1 2 6 6 2 1 2 2 2 1 1 2 2 2 6 2 2 1 1 2 1 2 1 2 2 1 2 2
## [5070] 2 6 2 6 2 6 6 6 2 1 2 2 1 2 1 2 2 6 2 1 2 2 2 1 1 2 1 2 6 1 2 1 2 1 2 2 2
## [5107] 2 1 1 2 2 2 2 2 2 2 2 1 2 2 2 2 6 6 6 1 2 1 6 2 2 2 1 2 2 6 2 1 2 2 2 2 1
## [5144] 2 2 2 2 2 2 2 6 1 1 2 1 6 2 6 2 1 2 1 2 2 2 1 6 2 2 1 2 2 6 2 6 2 2 2 1 2
## [5181] 1 2 1 1 2 2 2 2 2 2 2 2 6 2 2 1 2 2 2 6 2 2 2 2 2 2 1 2 2 2 1 2 6 2 2 1 1
## [5218] 2 2 1 1 1 6 2 2 2 2 2 2 1 6 2 1 2 2 1 2 2 1 6 2 2 2 2 2 2 2 2 6 1 2 2 1 1
## [5255] 6 6 2 2 1 2 2 2 1 1 2 6 1 1 2 2 2 2 2 2 2 6 2 2 2 2 2 2 1 6 2 1 2 2 2 6 2
## [5292] 2 2 2 2 1 6 2 2 2 2 1 1 6 2 1 2 1 6 6 6 1 1 1 2 2 2 1 1 2 1 6 2 2 2 1 2 2
## [5329] 2 2 1 2 1 1 2 1 1 1 2 1 1 2 2 2 2 2 2 2 2 6 6 6 2 2 2 2 2 2 2 2 2 2 2 1 2
## [5366] 2 6 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 2 2 2 6 2 2 2 1 6 2 1 2 6 2 1 2 1 2
## [5403] 1 2 2 2 1 1 2 7 2 2 2 2 2 7 2 2 2 6 1 1 6 2 1 6 2 6 2 6 2 2 2 2 2 6 2 2 6
## [5440] 7 1 2 1 1 2 2 2 6 2 1 6 2 6 2 2 6 2 2 1 2 2 2 6 2 6 1 2 2 2 1 6 6 2 2 6 1
## [5477] 2 2 2 2 6 1 1 6 1 2 6 2 6 1 2 2 2 2 2 2 1 2 1 2 2 2 1 2 6 6 1 6 2 7 1 1 2
## [5514] 1 2 2 1 1 2 2 2 1 2 2 2 2 2 2 6 2 2 2 2 1 2 2 6 2 6 1 2 2 2 2 2 2 6 1 2 6
## [5551] 2 1 2 6 2 1 2 1 6 6 1 2 1 2 6 2 2 2 2 2 1 2 2 6 1 7 7 2 6 2 2 2 2 2 2 2 2
## [5588] 1 2 1 1 6 2 1 7 2 2 2 6 2 2 2 2 2 6 1 6 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 1 6
## [5625] 7 2 2 2 2 2 6 1 2 2 2 2 1 2 6 2 1 2 1 6 2 1 1 2 6 2 6 2 2 2 2 2 1 2 7 6 2
## [5662] 6 2 2 2 6 1 2 1 2 1 1 2 6 1 7 6 7 1 2 6 2 1 2 2 1 2 1 2 6 2 1 1 2 2 1 1 2
## [5699] 2 1 2 2 2 2 2 2 2 2 2 2 7 7 7 2 2 6 7 2 2 6 2 2 2 2 7 7 6 2 2 2 7 2 2 2 7
## [5736] 7 7 7 2 2 2 2 2 2 2 2 7 2 2 7 7 2 2 2 2 2 6 2 7 2 2 6 2 7 2 2 7 7 2 2 2 2
## [5773] 2 6 2 7 6 7 7 6 2 2 7 7 7 2 2 2 6 6 7 6 2 6 2 2 2 6 6 2 2 6 2 2 2 7 2 6 6
## [5810] 2 2 2 2 2 2 2 7 7 6 7 6 2 2 7 2 6 2 7 6 2 2 2 6 7 2 7 2 6 7 2 2 2 7 2 2 2
## [5847] 7 2 7 2 2 6 7 2 7 2 2 7 2 7 6 6 7 6 2 7 6 6 2 6 6 6 2 2 2 6 7 2 6 2 2 7 2
## [5884] 2 7 2 2 7 2 2 6 2 2 2 2 2 2 6 7 2 7 7 2 2 2 6 2 6 7 2 2 7 7 2 2 2 6 2 2 7
## [5921] 2 2 7 2 2 2 2 6 7 2 2 6 2 2 2 2 2 7 2 7 6 2 7 2 7 7 2 2 2 2 2 7 7 7 6 7 7
## [5958] 2 7 6 7 2 2 2 7 2 7 2 2 2 7 2 7 7 2 2 7 7 7 7 7 7 2 2 7 7 2 2 2 2 2 6 7 2
## [5995] 7 2 2 2 2 7 7 7 2 2 7 7 7 7 7 7 2 2 2 2 7 2 2 2 2 2 2 2 2 2 7 2 2 2 6 2 7
## [6032] 7 2 7 2 2 7 7 7 2 2 7 2 2 7 2 7 2 2 2 2 2 2 2 7 7 2 2 7 7 2 2 7 6 2 2 6 7
## [6069] 7 7 2 2 2 7 7 2 2 7 2 7 2 7 7 7 2 2 7 2 2 2 2 2 2 7 2 2 2 6 2 2 2 7 2 7 2
## [6106] 2 7 2 7 2 2 7 2 2 7 7 6 7 7 7 2 7 7 7 2 2 7 2 7 7 2 2 2 2 7 2 7 7 2 2 2 2
## [6143] 7 2 2 2 7 7 7 2 2 7 2 2 7 2 7 7 7 7 7 7 2 2 7 7 2 7 7 7 2 2 2 2 7 2 7 2 7
## [6180] 2 7 2 7 7 7 7 2 2 7 7 2 7 7 7 7 2 7 7 2 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 2 2
## [6217] 7 7 7 2 7 7 7 7 2 7 7 7 7 7 7 7 2 2 2 7 7 7 2 7 2 7 7 7 7 7 2 2 7 7 7 7 7
## [6254] 7 2 7 7 7 7
pc_cluster_2$centers
##   price_scal     hd_scal    ram_scal screen_scal    ads_scal trend_scal
## 1  1.1319544  1.87953602  1.98907776   0.2311906 -0.25689222  0.7187634
## 2 -0.8059027  0.25714110 -0.30778330  -0.3149394 -0.87042147  1.1901757
## 3  0.7831510  0.15180128  0.43768789  -0.1940665  0.68940235 -0.3418194
## 4  0.2236210 -0.71189090 -0.31533681  -0.3865596 -1.32026778 -1.5488315
## 5 -0.6789505 -0.75153560 -0.72614567  -0.4595027  0.68458066 -0.3545347
## 6  0.6134885  0.01471083 -0.05422796   2.6419582  0.01787975  0.1715903
## 7  0.4955588  2.47621810  2.03433515   0.8875044 -1.89584520  1.9180961
pc_cluster_2$size
## [1]  445 1069 1397  622 1950  543  233
pc_cluster_2$size
## [1]  445 1069 1397  622 1950  543  233
center <-pc_cluster_2$centers
center
##   price_scal     hd_scal    ram_scal screen_scal    ads_scal trend_scal
## 1  1.1319544  1.87953602  1.98907776   0.2311906 -0.25689222  0.7187634
## 2 -0.8059027  0.25714110 -0.30778330  -0.3149394 -0.87042147  1.1901757
## 3  0.7831510  0.15180128  0.43768789  -0.1940665  0.68940235 -0.3418194
## 4  0.2236210 -0.71189090 -0.31533681  -0.3865596 -1.32026778 -1.5488315
## 5 -0.6789505 -0.75153560 -0.72614567  -0.4595027  0.68458066 -0.3545347
## 6  0.6134885  0.01471083 -0.05422796   2.6419582  0.01787975  0.1715903
## 7  0.4955588  2.47621810  2.03433515   0.8875044 -1.89584520  1.9180961
library(tidyr)
## Warning: package 'tidyr' was built under R version 4.1.3
# create dataset with the cluster number

cluster <- c(1: 7)
center_df <- data.frame(cluster, center)
# Reshape the data

center_reshape <- gather(center_df, features, values, price_scal: trend_scal)
head(center_reshape)
##   cluster   features     values
## 1       1 price_scal  1.1319544
## 2       2 price_scal -0.8059027
## 3       3 price_scal  0.7831510
## 4       4 price_scal  0.2236210
## 5       5 price_scal -0.6789505
## 6       6 price_scal  0.6134885
library(RColorBrewer)
# Create the palette
hm.palette <-colorRampPalette(rev(brewer.pal(10, 'RdYlGn')),space='Lab')
# Plot the heat map
library(ggplot2)
ggplot(data = center_reshape, aes(x = features, y = cluster, fill = values)) +
  scale_y_continuous(breaks = seq(1, 7, by = 1)) +
  geom_tile() +
  coord_equal() +
  scale_fill_gradientn(colours = hm.palette(90)) +
  theme_classic()