Imagine 10000 receipts sitting on your table. Each receipt represents a transaction with items that were purchased. The receipt is a representation of stuff that went into a customer’s basket - and therefore ‘Market Basket Analysis’.
That is exactly what the Groceries Data Set contains: a collection of receipts with each line representing 1 receipt and the items purchased. Each line is called a transaction and each column in a row represents an item. The data set is attached.
Your assignment is to use R to mine the data for association rules. You should report support, confidence and lift and your top 10 rules by lift.
Extra credit: do a simple cluster analysis on the data as well. Use whichever packages you like.
In this step we will use the read.tranactions() to load our “baskets”
directly from our csv file, I will also plot some the most frequent
items in the dataset (showing in different records/reciepts)
# Load the data from a file
groceries <- read.transactions("GroceryDataSet.csv", sep = ",", format = "basket")
summary(groceries)
## transactions as itemMatrix in sparse format with
## 9835 rows (elements/itemsets/transactions) and
## 169 columns (items) and a density of 0.02609146
##
## most frequent items:
## whole milk other vegetables rolls/buns soda
## 2513 1903 1809 1715
## yogurt (Other)
## 1372 34055
##
## element (itemset/transaction) length distribution:
## sizes
## 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
## 2159 1643 1299 1005 855 645 545 438 350 246 182 117 78 77 55 46
## 17 18 19 20 21 22 23 24 26 27 28 29 32
## 29 14 14 9 11 4 6 1 1 1 1 3 1
##
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 1.000 2.000 3.000 4.409 6.000 32.000
##
## includes extended item information - examples:
## labels
## 1 abrasive cleaner
## 2 artif. sweetener
## 3 baby cosmetics
inspect(head(groceries,5))
## items
## [1] {citrus fruit,
## margarine,
## ready soups,
## semi-finished bread}
## [2] {coffee,
## tropical fruit,
## yogurt}
## [3] {whole milk}
## [4] {cream cheese,
## meat spreads,
## pip fruit,
## yogurt}
## [5] {condensed milk,
## long life bakery product,
## other vegetables,
## whole milk}
popular_items <- eclat(groceries, parameter = list(supp = 0.7, maxlen = 5))
## Eclat
##
## parameter specification:
## tidLists support minlen maxlen target ext
## FALSE 0.7 1 5 frequent itemsets TRUE
##
## algorithmic control:
## sparse sort verbose
## 7 -2 TRUE
##
## Absolute minimum support count: 6884
## eclat - zero frequent items
inspect(popular_items)
itemFrequencyPlot(groceries, topN = 15, type = "absolute", main = "Item Counts", horiz = TRUE)
We aim to create association rules between items using the
arules
package. To capture all patterns, including niche
ones, we will start with a support threshold of 0.001 and a confidence
threshold of 0.5.
rules <- apriori(groceries, parameter = list(supp = 0.001, conf = 0.5))
## Apriori
##
## Parameter specification:
## confidence minval smax arem aval originalSupport maxtime support minlen
## 0.5 0.1 1 none FALSE TRUE 5 0.001 1
## maxlen target ext
## 10 rules TRUE
##
## Algorithmic control:
## filter tree heap memopt load sort verbose
## 0.1 TRUE TRUE FALSE TRUE 2 TRUE
##
## Absolute minimum support count: 9
##
## set item appearances ...[0 item(s)] done [0.00s].
## set transactions ...[169 item(s), 9835 transaction(s)] done [0.00s].
## sorting and recoding items ... [157 item(s)] done [0.00s].
## creating transaction tree ... done [0.00s].
## checking subsets of size 1 2 3 4 5 6 done [0.01s].
## writing ... [5668 rule(s)] done [0.00s].
## creating S4 object ... done [0.00s].
inspect(sort(rules, by = "lift")[1:10])
## lhs rhs support confidence coverage lift count
## [1] {Instant food products,
## soda} => {hamburger meat} 0.001220132 0.6315789 0.001931876 18.99565 12
## [2] {popcorn,
## soda} => {salty snack} 0.001220132 0.6315789 0.001931876 16.69779 12
## [3] {baking powder,
## flour} => {sugar} 0.001016777 0.5555556 0.001830198 16.40807 10
## [4] {ham,
## processed cheese} => {white bread} 0.001931876 0.6333333 0.003050330 15.04549 19
## [5] {Instant food products,
## whole milk} => {hamburger meat} 0.001525165 0.5000000 0.003050330 15.03823 15
## [6] {curd,
## other vegetables,
## whipped/sour cream,
## yogurt} => {cream cheese} 0.001016777 0.5882353 0.001728521 14.83409 10
## [7] {domestic eggs,
## processed cheese} => {white bread} 0.001118454 0.5238095 0.002135231 12.44364 11
## [8] {other vegetables,
## tropical fruit,
## white bread,
## yogurt} => {butter} 0.001016777 0.6666667 0.001525165 12.03058 10
## [9] {hamburger meat,
## whipped/sour cream,
## yogurt} => {butter} 0.001016777 0.6250000 0.001626843 11.27867 10
## [10] {domestic eggs,
## other vegetables,
## tropical fruit,
## whole milk,
## yogurt} => {butter} 0.001016777 0.6250000 0.001626843 11.27867 10
After inspecting the top ten generated rules by lift, we observe some interesting associations. For instance, there is an 18% likelihood that a customer will buy hamburger meat if they purchase soda and quick cooking items. Using lift is critical in association analysis because it incorporates a baseline for random chance. For example, even if a customer doesn’t need hamburger meat today, it might still be appealing to buy some to keep in the freezer for later.
If we were to rely solely on the confidence statistic, we might conclude that there is a 68% chance of buying hamburger meat when soda and quick cooking items are purchased. However, this could be misleading. High confidence alone might not account for the fact that hamburger meat is a popular item purchased frequently across all transactions, which could inflate the association. This misinterpretation could lead to the misallocation of resources, such as overstocking unrelated items or missing other significant patterns.
By considering lift, we ensure that we focus on meaningful associations that exceed what would occur by random chance, providing actionable insights for inventory management and targeted promotions.
inspect(sort(rules, by = "confidence")[1:10])
## lhs rhs support confidence coverage lift count
## [1] {rice,
## sugar} => {whole milk} 0.001220132 1 0.001220132 3.913649 12
## [2] {canned fish,
## hygiene articles} => {whole milk} 0.001118454 1 0.001118454 3.913649 11
## [3] {butter,
## rice,
## root vegetables} => {whole milk} 0.001016777 1 0.001016777 3.913649 10
## [4] {flour,
## root vegetables,
## whipped/sour cream} => {whole milk} 0.001728521 1 0.001728521 3.913649 17
## [5] {butter,
## domestic eggs,
## soft cheese} => {whole milk} 0.001016777 1 0.001016777 3.913649 10
## [6] {citrus fruit,
## root vegetables,
## soft cheese} => {other vegetables} 0.001016777 1 0.001016777 5.168156 10
## [7] {butter,
## hygiene articles,
## pip fruit} => {whole milk} 0.001016777 1 0.001016777 3.913649 10
## [8] {hygiene articles,
## root vegetables,
## whipped/sour cream} => {whole milk} 0.001016777 1 0.001016777 3.913649 10
## [9] {hygiene articles,
## pip fruit,
## root vegetables} => {whole milk} 0.001016777 1 0.001016777 3.913649 10
## [10] {cream cheese,
## domestic eggs,
## sugar} => {whole milk} 0.001118454 1 0.001118454 3.913649 11
As observed above, when we highlight confidence as the statistic of
interest, we see a strong predictor for whole milk across a variety of
baskets. This raises an important question: Is purchasing shaving cream
and fruits a direct precedent to buying milk, or is milk simply a
consistently popular item because it is an essential product found in
the majority of baskets, regardless of the other items present?
inspect(sort(rules, by = "support")[1:10])
## lhs rhs support
## [1] {other vegetables, yogurt} => {whole milk} 0.02226741
## [2] {tropical fruit, yogurt} => {whole milk} 0.01514997
## [3] {other vegetables, whipped/sour cream} => {whole milk} 0.01464159
## [4] {root vegetables, yogurt} => {whole milk} 0.01453991
## [5] {other vegetables, pip fruit} => {whole milk} 0.01352313
## [6] {root vegetables, yogurt} => {other vegetables} 0.01291307
## [7] {rolls/buns, root vegetables} => {whole milk} 0.01270971
## [8] {domestic eggs, other vegetables} => {whole milk} 0.01230300
## [9] {root vegetables, tropical fruit} => {other vegetables} 0.01230300
## [10] {rolls/buns, root vegetables} => {other vegetables} 0.01220132
## confidence coverage lift count
## [1] 0.5128806 0.04341637 2.007235 219
## [2] 0.5173611 0.02928317 2.024770 149
## [3] 0.5070423 0.02887646 1.984385 144
## [4] 0.5629921 0.02582613 2.203354 143
## [5] 0.5175097 0.02613116 2.025351 133
## [6] 0.5000000 0.02582613 2.584078 127
## [7] 0.5230126 0.02430097 2.046888 125
## [8] 0.5525114 0.02226741 2.162336 121
## [9] 0.5845411 0.02104728 3.020999 121
## [10] 0.5020921 0.02430097 2.594890 120
When sorting our rules by the support metric, we observe that milk consistently appears as a top choice in many of the top ten rules. However, it is important to note that all of these rules have a lift value of less than 5. This indicates that the associative rule provides only a small improvement over random chance, highlighting the limited strength of these associations.
library(mclust)
## Package 'mclust' version 6.1.1
## Type 'citation("mclust")' for citing this R package in publications.
##
## Attaching package: 'mclust'
## The following object is masked from 'package:purrr':
##
## map
set.seed(545)
# converting the data to binary mattrix for clustering
groceries_matrix <- as(groceries, "matrix")
wcss <- function(data, max_clusters) {
sse <- numeric(max_clusters)
for (k in 1:max_clusters) {
set.seed(123) # For reproducibility
kmeans_model <- kmeans(data, centers = k)
sse[k] <- kmeans_model$tot.withinss
}
return(sse)
}
max_k <- 10
wcss_values <- wcss(groceries_matrix, max_k)
wcss_values
## [1] 39781.76 37685.41 36940.59 35996.74 35201.04 34632.41 34044.15 33694.81
## [9] 33428.31 33156.20
plot(1:max_k, wcss_values, type = "b", pch = 19, frame = FALSE,
xlab = "Number of Clusters (k)", ylab = "Total Within-Cluster Sum of Squares",
main = "Elbow Method for Optimal k")
After converting the grocery data into a matrix, we implemented a simple k-means clustering algorithm. By iterating through k=1k = 1k=1 to k=10k = 10k=10, the elbow plot suggests that the optimal number of clusters is 3. Next, we will attempt to visualize the clusters. To do this effectively, we will first perform PCA (Principal Component Analysis) to reduce the dimensionality of the data.
pca_result <- prcomp(groceries_matrix, scale. = TRUE)
optimal_k <- 3
kmeans_result <- kmeans(groceries_matrix, centers = optimal_k)
# View the clustering result
print(kmeans_result)
## K-means clustering with 3 clusters of sizes 6046, 1993, 1796
##
## Cluster means:
## abrasive cleaner artif. sweetener baby cosmetics baby food bags
## 1 0.002480979 0.002811776 0.0003307972 0.0000000000 0.0004961958
## 2 0.007526342 0.004014049 0.0010035123 0.0000000000 0.0000000000
## 3 0.002783964 0.003897550 0.0011135857 0.0005567929 0.0005567929
## baking powder bathroom cleaner beef berries beverages bottled beer
## 1 0.01141250 0.003142574 0.03886867 0.02844856 0.02381740 0.08402249
## 2 0.03662820 0.001003512 0.07827396 0.04616157 0.03060712 0.07676869
## 3 0.01781737 0.003340757 0.06959911 0.03507795 0.02839644 0.07293987
## bottled water brandy brown bread butter butter milk cake bar
## 1 0.09741978 0.004300364 0.05176977 0.03274892 0.01935164 0.01008932
## 2 0.13146011 0.002007025 0.10185650 0.11189162 0.04264927 0.01956849
## 3 0.13140312 0.006124722 0.06792873 0.06904232 0.04064588 0.01670379
## candles candy canned beer canned fish canned fruit canned vegetables
## 1 0.008931525 0.02762157 0.09708898 0.01091631 0.002480979 0.009096924
## 2 0.011038635 0.02960361 0.03311591 0.02257903 0.005519318 0.015052684
## 3 0.006681514 0.03786192 0.06180401 0.02060134 0.003340757 0.011692650
## cat food cereals chewing gum chicken chocolate
## 1 0.01902084 0.002646378 0.02084022 0.03307972 0.04134965
## 2 0.03813347 0.014550928 0.02207727 0.06522830 0.06171601
## 3 0.02115813 0.006124722 0.02060134 0.05122494 0.06403118
## chocolate marshmallow citrus fruit cleaner cling film/bags cocoa drinks
## 1 0.007277539 0.06814423 0.003804168 0.01058551 0.0009923917
## 2 0.012042148 0.12092323 0.010035123 0.01455093 0.0055193176
## 3 0.011692650 0.08964365 0.003897550 0.01057906 0.0027839644
## coffee condensed milk cooking chocolate cookware cream
## 1 0.05325835 0.010254714 0.001488587 0.003142574 0.0013231889
## 2 0.07225289 0.009031611 0.005017561 0.001003512 0.0020070246
## 3 0.05846325 0.011692650 0.003340757 0.003340757 0.0005567929
## cream cheese curd curd cheese decalcifier dental care dessert
## 1 0.02662918 0.03539530 0.003307972 0.001323189 0.004631161 0.03010255
## 2 0.06773708 0.10837933 0.007024586 0.002508781 0.007526342 0.05820371
## 3 0.05233853 0.05233853 0.008908686 0.001113586 0.007795100 0.03730512
## detergent dish cleaner dishes dog food domestic eggs
## 1 0.01455508 0.009758518 0.01687066 0.007112140 0.03870327
## 2 0.03612644 0.011540391 0.01956849 0.014049172 0.11991972
## 3 0.01614699 0.011692650 0.01781737 0.007238307 0.08407572
## female sanitary products finished products fish flour
## 1 0.004631161 0.006781343 0.002977175 0.01091631
## 2 0.008028098 0.007024586 0.004014049 0.03462117
## 3 0.008908686 0.005011136 0.001670379 0.02004454
## flower (seeds) flower soil/fertilizer frankfurter frozen chicken
## 1 0.008435329 0.0026463778 0.04019186 0.0006615944
## 2 0.016557953 0.0005017561 0.07576518 0.0005017561
## 3 0.010022272 0.0011135857 0.10356347 0.0005567929
## frozen dessert frozen fish frozen fruits frozen meals frozen potato products
## 1 0.008435329 0.008600728 0.001157790 0.02563678 0.006450546
## 2 0.013547416 0.019568490 0.001505268 0.03863522 0.013045660
## 3 0.015590200 0.013363029 0.001113586 0.02616927 0.010022272
## frozen vegetables fruit/vegetable juice grapes hair spray ham
## 1 0.03572610 0.05788951 0.01835925 0.0009923917 0.01753225
## 2 0.08028098 0.11088811 0.03110888 0.0015052684 0.04214752
## 3 0.05400891 0.07795100 0.02616927 0.0011135857 0.03674833
## hamburger meat hard cheese herbs honey house keeping products
## 1 0.02232881 0.01769765 0.01257029 0.0004961958 0.005954350
## 2 0.05619669 0.03913698 0.02910186 0.0040140492 0.015052684
## 3 0.04454343 0.03118040 0.01447661 0.0022271715 0.008908686
## hygiene articles ice cream instant coffee Instant food products jam
## 1 0.02795237 0.02695997 0.006119749 0.00595435 0.003307972
## 2 0.05067737 0.02508781 0.009533367 0.01053688 0.010536879
## 3 0.03006682 0.01837416 0.009465479 0.01224944 0.006681514
## ketchup kitchen towels kitchen utensil light bulbs liqueur
## 1 0.004134965 0.004300364 0.0001653986 0.004796560 0.0008269931
## 2 0.006522830 0.010536879 0.0010035123 0.002508781 0.0005017561
## 3 0.002227171 0.006681514 0.0005567929 0.003897550 0.0016703786
## liquor liquor (appetizer) liver loaf long life bakery product
## 1 0.015382071 0.009758518 0.003638769 0.03126034
## 2 0.002508781 0.005519318 0.007526342 0.05218264
## 3 0.006124722 0.004454343 0.007238307 0.04175947
## make up remover male cosmetics margarine mayonnaise meat meat spreads
## 1 0.0009923917 0.005127357 0.04366523 0.006285147 0.01968243 0.002811776
## 2 0.0000000000 0.003512293 0.08580030 0.013547416 0.03411942 0.006522830
## 3 0.0011135857 0.003897550 0.07850780 0.013919822 0.03730512 0.006681514
## misc. beverages mustard napkins newspapers nut snack nuts/prunes
## 1 0.02844856 0.006285147 0.04217665 0.06516705 0.003638769 0.002480979
## 2 0.03060712 0.019568490 0.07325640 0.09884596 0.001505268 0.004014049
## 3 0.02561247 0.022828508 0.06347439 0.10801782 0.003340757 0.005567929
## oil onions organic products organic sausage other vegetables
## 1 0.02348660 0.02431360 0.001157790 0.001653986 0.1491895
## 2 0.04515805 0.04716508 0.002508781 0.003512293 0.2980432
## 3 0.02449889 0.03563474 0.002227171 0.002783964 0.2266147
## packaged fruit/vegetables pasta pastry pet care photo/film
## 1 0.01207410 0.01273569 0.06913662 0.010420112 0.010254714
## 2 0.01505268 0.02408430 0.12744606 0.010536879 0.009031611
## 3 0.01391982 0.01280624 0.11302895 0.005011136 0.006124722
## pickled vegetables pip fruit popcorn pork pot plants
## 1 0.01339729 0.06003970 0.005954350 0.04862719 0.01488587
## 2 0.02659308 0.12393377 0.012042148 0.08278976 0.02609132
## 3 0.02338530 0.07461024 0.006124722 0.06013363 0.01559020
## potato products preservation products processed cheese prosecco
## 1 0.001819385 0.0001653986 0.01108171 0.002150182
## 2 0.005519318 0.0005017561 0.02558956 0.001003512
## 3 0.003340757 0.0000000000 0.02505568 0.002783964
## pudding powder ready soups red/blush wine rice roll products
## 1 0.001488587 0.0006615944 0.01951704 0.003473371 0.007773735
## 2 0.006021074 0.0025087807 0.01605620 0.021575514 0.017561465
## 3 0.001113586 0.0050111359 0.02171492 0.006124722 0.010579065
## rolls/buns root vegetables rubbing alcohol rum salad dressing
## 1 0.00000000 0.07657956 0.0004961958 0.003638769 0.0009923917
## 2 0.00652283 0.19167085 0.0030105369 0.006522830 0.0005017561
## 3 1.00000000 0.12639198 0.0005567929 0.005011136 0.0005567929
## salt salty snack sauces sausage seasonal products
## 1 0.009096924 0.03738009 0.004631161 0.06814423 0.01389348
## 2 0.015554441 0.04917210 0.009031611 0.10687406 0.01455093
## 3 0.011135857 0.02672606 0.004454343 0.16648107 0.01503341
## semi-finished bread shopping bags skin care sliced cheese snack products
## 1 0.01389348 0.09659279 0.002315581 0.01422428 0.002150182
## 2 0.02910186 0.09683894 0.004014049 0.04164576 0.003512293
## 3 0.01781737 0.10690423 0.007238307 0.04008909 0.005567929
## soap soda soft cheese softener sound storage medium
## 1 0.002315581 0.1696990 0.009262322 0.004961958 0.0001653986
## 2 0.003010537 0.1565479 0.030607125 0.007526342 0.0000000000
## 3 0.003340757 0.2099109 0.028396437 0.005011136 0.0000000000
## soups sparkling wine specialty bar specialty cheese specialty chocolate
## 1 0.005458154 0.006450546 0.02695997 0.006450546 0.03059874
## 2 0.011038635 0.005017561 0.02558956 0.017561465 0.02960361
## 3 0.006681514 0.003340757 0.03062361 0.005567929 0.03062361
## specialty fat specialty vegetables spices spread cheese sugar
## 1 0.003307972 0.0021501819 0.004796560 0.007939133 0.02447899
## 2 0.005519318 0.0015052684 0.005519318 0.010536879 0.05970898
## 3 0.002783964 0.0005567929 0.006124722 0.022828508 0.03674833
## sweet spreads syrup tea tidbits toilet cleaner
## 1 0.007442937 0.002977175 0.002315581 0.001323189 0.0008269931
## 2 0.014049172 0.004014049 0.006522830 0.001505268 0.0010035123
## 3 0.008908686 0.003340757 0.006124722 0.006681514 0.0000000000
## tropical fruit turkey UHT-milk vinegar waffles
## 1 0.07707575 0.005623553 0.03853788 0.004796560 0.03390672
## 2 0.16708480 0.015052684 0.01655795 0.010035123 0.04365278
## 3 0.12973274 0.008908686 0.03507795 0.008351893 0.04788419
## whipped/sour cream whisky white bread white wine whole milk yogurt
## 1 0.05143897 0.0008269931 0.03456831 0.02315581 0.0000000 0.1017201
## 2 0.12995484 0.0005017561 0.07175113 0.01053688 0.9879579 0.2147516
## 3 0.07516704 0.0011135857 0.03452116 0.01447661 0.3028953 0.1831849
## zwieback
## 1 0.007112140
## 2 0.006021074
## 3 0.007238307
##
## Clustering vector:
## [1] 1 1 2 1 2 2 3 3 1 2 1 2 1 3 1 1 1 1 1 1 1 1 2 1 3 1 1 3 1 1 1 3 2 2 1 1 1
## [38] 1 2 1 3 2 1 1 3 1 1 3 1 3 3 1 2 1 2 2 1 3 3 3 2 1 2 3 3 2 1 1 2 3 1 2 2 2
## [75] 1 3 2 1 1 1 1 3 1 1 1 3 1 1 1 1 1 1 1 1 1 1 3 1 2 1 1 3 3 2 1 3 1 3 1 1 3
## [112] 1 3 1 1 2 3 2 2 1 1 1 1 1 1 2 1 1 3 1 1 2 1 1 1 1 1 3 1 1 3 1 2 2 1 3 3 1
## [149] 3 1 2 1 3 1 2 1 1 3 2 1 3 1 1 1 1 1 2 2 1 1 2 1 1 1 1 2 2 1 1 1 3 1 1 1 1
## [186] 2 3 1 2 1 1 1 1 3 1 2 1 1 1 1 1 1 3 1 2 3 2 1 1 3 1 1 1 2 3 1 1 1 1 1 1 1
## [223] 3 1 1 3 1 1 3 1 1 3 2 3 3 3 1 3 2 3 1 2 3 1 2 3 3 1 3 2 3 3 1 1 1 1 1 1 3
## [260] 2 1 1 1 1 1 1 3 2 1 1 2 3 1 2 2 3 3 3 3 1 1 2 1 1 3 2 1 1 1 3 1 2 2 1 2 1
## [297] 1 1 1 1 3 3 1 1 1 1 1 1 2 1 2 1 1 1 1 1 1 1 1 1 1 3 2 1 1 1 1 3 3 1 3 1 1
## [334] 1 1 1 1 1 1 2 2 3 1 1 3 1 1 2 2 2 1 1 1 1 1 2 1 1 3 2 2 2 1 1 2 1 2 3 1 1
## [371] 1 1 1 1 3 3 2 3 1 1 1 1 1 1 1 1 1 3 1 2 1 1 3 1 1 2 1 3 2 2 1 1 3 3 1 1 1
## [408] 1 1 1 1 3 1 2 3 1 1 1 3 1 3 1 2 3 1 1 1 1 1 2 1 1 3 1 1 1 1 1 1 1 3 3 1 1
## [445] 1 3 3 1 1 3 2 1 2 3 1 2 1 3 1 1 1 1 1 2 3 3 2 1 3 1 1 1 3 1 1 2 1 1 2 1 1
## [482] 2 1 3 1 1 1 1 1 3 1 1 1 2 3 1 1 1 1 1 1 2 1 1 3 1 1 2 1 1 1 1 1 1 1 2 1 2
## [519] 1 1 1 1 1 3 1 1 1 2 1 3 1 1 1 2 1 1 1 2 2 1 1 3 3 1 1 2 2 2 2 1 1 1 1 1 3
## [556] 1 1 1 1 3 1 2 2 2 3 1 1 3 2 1 1 1 2 1 1 1 1 3 1 2 1 1 3 3 1 3 2 2 1 1 1 1
## [593] 1 3 1 2 2 3 1 3 1 1 1 2 2 1 1 2 3 1 1 3 1 3 2 2 1 3 1 2 1 3 1 3 2 3 1 3 2
## [630] 2 3 3 2 1 1 1 1 2 1 1 3 3 3 3 1 1 3 1 1 1 1 2 1 1 1 1 1 3 2 3 3 1 1 1 1 3
## [667] 3 2 3 1 1 1 3 1 1 2 1 2 3 2 3 3 1 1 2 3 1 3 1 1 3 1 1 3 2 1 1 3 3 1 2 1 1
## [704] 3 2 3 2 2 1 2 1 1 3 1 1 1 3 3 3 3 3 1 3 1 1 3 3 3 3 1 2 3 2 1 3 1 1 1 1 2
## [741] 2 3 1 1 1 1 3 1 1 3 1 1 3 1 1 1 1 1 2 3 3 2 1 1 1 1 3 2 2 3 1 3 1 1 3 1 2
## [778] 2 1 1 1 3 2 3 2 1 3 3 1 1 1 3 2 1 3 3 3 3 1 1 2 1 1 3 1 1 1 1 2 2 2 2 1 1
## [815] 1 1 2 2 1 3 2 2 3 1 3 2 1 3 1 2 2 1 3 1 1 2 1 1 1 2 3 1 2 2 3 2 1 1 2 2 2
## [852] 1 3 1 3 2 1 1 1 3 2 3 1 1 3 1 1 1 2 3 3 2 3 2 2 1 1 1 1 1 1 1 1 1 1 3 1 3
## [889] 1 1 1 1 3 2 1 2 2 1 3 3 3 1 2 1 2 1 1 2 1 2 1 1 1 1 1 1 1 1 3 3 3 2 2 3 1
## [926] 1 1 2 1 1 2 2 3 1 1 1 3 3 1 1 1 1 2 1 1 2 3 1 2 1 1 1 2 3 1 1 1 2 3 1 1 1
## [963] 2 1 1 1 2 1 1 1 3 1 1 1 2 1 1 1 1 2 2 1 3 1 2 2 1 1 1 2 2 1 1 1 1 1 2 1 3
## [1000] 1 1 1 1 3 1 3 1 1 2 2 1 3 2 2 1 1 2 1 2 2 1 1 2 1 1 1 1 1 1 1 3 1 1 1 1 2
## [1037] 1 1 1 2 1 1 1 1 1 1 2 1 1 2 3 2 2 1 1 3 2 1 3 1 1 1 2 2 1 1 2 3 1 1 1 1 3
## [1074] 2 3 1 2 1 1 1 1 2 1 2 2 3 1 1 1 3 1 3 2 1 1 1 1 1 1 1 1 2 3 1 2 1 1 1 1 3
## [1111] 3 1 3 1 2 1 1 1 1 2 1 2 1 1 3 1 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 3 1 1 1 1
## [1148] 2 2 3 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 1 1 1 1 1 1 1 1 1 1 1 1 1 3 1 1 1
## [1185] 3 3 1 3 2 3 1 1 1 3 3 3 2 2 2 1 1 3 1 3 1 2 2 1 2 1 2 3 3 1 1 2 2 3 3 2 1
## [1222] 1 1 1 1 1 3 2 2 2 1 1 1 1 3 2 2 3 1 1 1 1 1 2 2 1 3 2 1 1 3 1 2 1 2 2 1 1
## [1259] 1 3 2 1 2 1 1 1 2 3 1 2 1 3 3 1 1 1 1 1 3 3 1 2 1 2 2 1 3 1 1 2 3 1 3 3 1
## [1296] 1 3 1 1 1 2 1 3 1 2 1 2 2 3 3 3 1 2 1 1 1 1 1 2 1 1 1 3 2 2 1 1 1 1 1 2 1
## [1333] 3 1 2 1 1 2 1 1 1 1 1 2 3 2 2 2 1 1 1 3 1 2 1 1 1 1 2 1 2 1 1 2 1 1 1 1 1
## [1370] 1 1 1 1 2 3 1 1 1 1 1 1 2 1 1 2 2 1 1 3 1 3 2 2 1 1 1 1 1 1 2 1 3 1 1 1 3
## [1407] 2 1 1 2 2 1 1 1 1 1 1 1 1 2 1 1 1 1 1 2 2 1 3 1 2 3 1 2 1 2 1 1 3 1 1 1 2
## [1444] 2 1 2 1 1 1 1 1 1 1 1 1 1 3 3 3 2 3 1 1 1 1 3 1 1 3 3 1 2 1 2 1 1 2 1 2 1
## [1481] 3 1 3 1 3 1 3 3 1 1 1 1 3 1 3 3 1 1 1 3 2 1 1 1 3 1 1 3 2 3 3 1 3 3 2 1 3
## [1518] 1 2 1 1 1 2 1 3 1 1 3 3 1 1 1 1 1 2 2 3 3 1 1 3 1 2 1 1 1 1 1 2 1 2 2 1 1
## [1555] 1 1 1 3 1 1 1 2 3 1 1 2 1 1 1 1 1 1 1 1 1 1 1 2 1 3 1 1 1 1 1 1 1 3 1 3 1
## [1592] 1 1 3 1 1 1 1 1 1 3 1 3 1 3 1 2 3 1 3 3 1 3 1 1 3 2 1 3 3 1 1 1 3 3 1 1 1
## [1629] 2 1 1 1 3 1 1 1 1 1 2 1 3 1 1 1 1 1 1 3 1 2 1 2 3 3 1 1 1 1 2 3 2 1 3 2 2
## [1666] 3 2 3 3 1 2 3 1 1 1 1 1 2 1 3 3 2 3 1 1 3 3 2 3 3 1 1 3 3 1 3 3 1 3 1 1 1
## [1703] 1 1 2 3 1 3 1 2 2 1 2 1 1 1 2 3 3 1 2 2 3 3 3 2 2 1 1 1 1 1 1 1 1 1 1 1 3
## [1740] 2 1 1 1 1 3 1 3 1 1 1 2 1 1 2 1 1 1 1 1 3 1 1 2 1 3 2 3 1 1 1 1 1 2 3 1 1
## [1777] 1 3 1 1 2 1 1 1 1 2 2 1 1 3 2 1 1 2 2 1 2 2 1 1 1 1 3 1 1 3 1 1 3 1 1 1 1
## [1814] 3 3 1 1 1 2 1 3 1 1 3 3 2 2 1 1 2 3 1 1 1 1 2 1 1 1 1 2 1 1 3 1 2 2 1 1 2
## [1851] 1 1 2 2 1 3 2 1 1 1 1 1 1 1 1 3 3 3 3 1 2 1 2 2 1 3 3 3 1 1 3 1 1 1 1 3 2
## [1888] 1 1 1 1 3 1 1 1 3 1 3 2 1 1 1 3 2 3 2 1 1 1 1 1 1 2 2 1 3 1 2 2 2 2 3 1 1
## [1925] 1 1 3 3 1 1 1 1 2 3 1 2 3 1 2 1 2 2 1 2 1 1 1 2 2 2 1 3 2 3 1 1 1 1 1 1 1
## [1962] 1 1 1 1 2 1 1 2 1 1 1 1 3 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 1 2 1 1 1 2 1 2 1
## [1999] 1 1 3 1 1 1 2 1 1 1 2 1 1 2 1 1 1 1 1 1 1 1 1 2 1 1 2 1 1 1 1 1 1 1 1 1 1
## [2036] 3 1 1 1 2 2 1 2 1 1 1 2 2 1 1 1 1 1 1 2 2 1 1 1 1 2 1 3 2 1 1 1 2 1 1 2 2
## [2073] 1 1 1 1 2 1 1 1 2 1 2 1 1 2 1 2 2 2 3 1 1 2 1 2 1 3 3 2 2 1 3 3 1 2 3 2 1
## [2110] 3 1 1 3 1 1 1 3 2 3 3 2 2 1 3 1 1 3 1 1 1 3 3 2 3 3 3 1 1 3 1 1 1 1 2 1 1
## [2147] 1 2 2 1 1 3 1 1 1 1 2 3 1 1 1 1 1 1 1 3 1 3 1 1 1 2 2 3 1 1 1 1 1 1 1 1 1
## [2184] 3 3 3 1 1 2 1 1 1 1 1 3 3 3 1 2 3 1 3 1 1 1 1 2 1 2 3 1 1 2 3 1 2 3 1 1 1
## [2221] 1 1 2 2 1 2 2 2 1 1 2 1 1 2 1 1 1 1 1 1 2 1 1 3 1 2 1 1 1 1 1 1 2 1 3 2 2
## [2258] 1 2 1 1 3 1 2 1 1 1 1 1 1 3 1 1 1 1 1 1 1 1 2 1 3 1 1 1 1 1 1 1 2 1 1 1 3
## [2295] 1 1 1 3 1 2 2 1 2 1 1 3 2 2 1 2 1 1 2 1 3 2 3 1 1 1 1 1 1 3 1 1 1 3 2 2 2
## [2332] 1 3 1 3 2 3 3 3 1 1 3 1 3 2 3 1 3 2 3 1 1 1 1 1 1 1 3 1 1 1 3 1 1 2 2 3 1
## [2369] 1 3 2 2 3 1 3 1 1 3 3 3 3 1 1 1 1 2 1 3 3 2 2 1 1 2 1 3 3 3 1 1 3 2 3 1 1
## [2406] 1 1 1 1 2 3 2 1 3 1 1 2 1 1 1 3 1 1 1 1 1 1 1 3 3 2 1 2 1 1 2 3 1 3 1 1 1
## [2443] 2 1 2 1 1 1 1 2 1 1 2 1 2 2 1 1 1 1 1 2 3 1 1 3 2 3 1 2 1 1 1 2 1 3 1 2 2
## [2480] 2 1 1 1 1 1 1 2 1 3 2 1 1 1 3 1 1 1 1 1 1 1 3 1 1 2 1 1 2 1 3 1 3 1 3 1 1
## [2517] 3 1 3 1 3 2 1 1 1 3 3 3 1 3 3 1 2 1 1 3 1 1 1 2 1 3 2 1 2 3 1 3 1 1 2 1 1
## [2554] 3 2 2 1 1 1 3 2 1 3 1 1 2 1 2 1 1 1 3 1 2 1 1 2 2 3 1 3 1 2 1 1 1 1 2 3 2
## [2591] 1 1 1 1 2 1 3 1 1 3 1 1 1 3 1 1 3 3 2 1 2 1 3 1 3 1 3 1 3 2 1 3 1 3 2 3 1
## [2628] 3 1 3 1 2 2 1 2 2 1 2 1 1 3 2 1 1 2 3 3 3 3 3 1 2 1 1 1 1 1 3 1 3 1 2 3 3
## [2665] 3 2 3 2 1 1 2 1 1 1 2 1 1 1 1 2 1 1 1 2 1 1 3 1 1 1 1 1 3 3 3 3 1 3 3 3 1
## [2702] 1 3 1 2 1 1 1 1 3 3 1 1 3 2 2 2 3 1 3 1 1 2 2 1 2 3 1 3 1 3 3 1 1 1 3 1 1
## [2739] 2 1 2 2 1 3 2 1 1 1 3 2 3 1 2 1 1 3 1 3 3 1 3 2 3 1 1 1 1 1 3 1 1 1 2 1 1
## [2776] 1 1 1 2 1 3 2 1 1 1 1 1 1 1 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 3 1 1 1 1 1 1
## [2813] 1 1 3 1 1 1 1 2 1 1 1 3 1 1 3 1 1 3 2 1 1 3 1 2 2 1 2 1 1 1 3 1 1 3 1 3 3
## [2850] 1 3 1 1 1 1 1 1 1 1 1 1 1 1 2 3 2 1 1 3 1 1 1 1 3 2 3 1 1 3 1 3 2 2 1 3 2
## [2887] 2 2 1 1 1 1 1 1 1 1 1 1 1 2 1 1 1 2 1 1 1 1 2 2 1 1 1 1 1 1 1 2 1 1 1 1 1
## [2924] 1 1 3 1 1 1 1 2 1 1 1 1 1 1 2 2 1 1 3 1 2 1 1 3 2 1 1 2 1 3 3 2 1 2 1 1 1
## [2961] 1 3 2 1 3 1 1 2 2 1 2 2 3 2 3 1 1 1 1 1 1 1 3 1 3 1 1 2 1 1 1 1 1 1 1 2 2
## [2998] 1 3 2 1 1 2 1 3 2 1 1 1 2 2 1 1 1 1 3 1 3 3 1 2 2 1 1 1 1 1 1 1 1 2 3 1 1
## [3035] 1 1 3 1 2 1 1 2 1 2 1 2 1 1 2 3 1 2 2 1 2 1 1 1 3 1 1 1 1 2 1 3 2 1 1 2 1
## [3072] 2 1 2 1 1 1 1 2 2 1 1 1 1 1 1 1 1 1 1 2 1 1 1 1 1 1 1 1 1 1 1 1 1 3 1 1 1
## [3109] 1 1 1 1 1 3 1 1 1 1 1 3 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 1 1 1 1 1 1 1 1 1 3
## [3146] 2 1 3 2 2 3 1 1 3 1 1 3 1 2 3 1 2 1 1 1 1 1 2 2 1 1 1 1 2 3 2 1 2 2 1 1 1
## [3183] 2 1 1 2 3 1 1 3 1 1 2 3 1 3 2 2 1 1 1 1 3 3 1 1 3 3 2 1 1 1 1 1 1 1 2 1 1
## [3220] 1 3 2 3 3 1 1 1 1 1 1 1 3 1 1 1 1 1 1 1 1 2 2 2 2 1 2 1 1 1 1 1 1 1 1 1 3
## [3257] 2 3 1 2 2 3 2 1 1 1 1 1 1 1 3 3 1 1 1 1 1 1 1 1 1 2 2 1 2 1 1 1 2 1 1 1 1
## [3294] 1 3 1 1 1 1 2 2 1 2 1 1 1 1 2 1 1 3 1 1 1 1 3 1 1 2 1 1 1 1 1 1 1 1 1 3 2
## [3331] 3 2 1 1 2 1 3 1 3 2 1 1 3 1 1 1 1 1 1 1 1 1 1 1 2 3 1 1 1 1 1 1 1 2 1 1 1
## [3368] 1 1 1 1 2 1 1 2 1 1 1 1 1 1 3 1 3 1 1 3 1 1 3 2 2 1 1 1 1 1 1 1 1 3 3 3 2
## [3405] 2 2 1 1 1 2 3 3 1 3 2 3 1 3 1 1 1 2 1 3 1 1 1 1 2 1 1 3 1 3 2 1 2 3 3 2 1
## [3442] 1 2 1 1 1 1 3 2 1 1 1 1 2 1 3 1 1 1 1 1 1 1 1 1 3 1 2 2 3 1 1 1 1 2 2 1 1
## [3479] 1 1 1 1 1 1 1 1 2 1 1 2 2 1 1 1 3 2 1 1 1 1 2 1 1 1 1 2 1 3 2 1 1 1 1 1 1
## [3516] 1 1 1 2 1 1 1 1 1 1 1 2 1 1 3 1 2 3 1 3 1 1 1 1 1 2 1 1 2 3 2 2 2 1 1 2 1
## [3553] 1 1 1 2 2 2 1 3 3 2 1 1 1 2 1 2 1 3 1 1 1 1 1 3 1 1 1 1 1 1 1 1 1 2 1 1 1
## [3590] 2 1 1 2 1 1 2 3 1 1 1 2 1 1 1 1 1 1 1 1 1 2 3 1 2 3 1 1 1 3 1 1 3 1 1 3 1
## [3627] 1 1 3 3 2 3 1 2 1 3 1 1 1 2 2 2 3 2 3 1 1 1 1 1 1 3 1 1 3 3 1 3 1 3 3 3 1
## [3664] 3 3 3 1 1 2 3 3 2 1 2 1 3 3 1 1 1 3 3 1 1 2 1 2 1 3 3 1 3 2 2 1 1 1 1 1 1
## [3701] 1 1 1 1 1 2 1 3 3 2 3 1 1 1 1 2 1 1 1 1 1 1 1 1 1 3 2 1 1 2 3 1 1 1 2 1 1
## [3738] 3 2 1 2 1 1 3 1 1 1 3 1 3 2 1 3 1 2 1 1 1 3 1 2 1 3 1 1 1 1 3 3 1 1 1 3 1
## [3775] 1 1 1 1 1 1 1 1 1 1 1 1 1 3 1 2 1 1 1 1 3 1 2 1 1 2 1 1 1 1 1 1 1 1 1 1 2
## [3812] 1 1 1 1 1 1 1 1 1 1 3 3 1 3 3 1 1 3 1 1 3 1 2 3 3 1 3 2 2 1 1 1 1 2 1 1 1
## [3849] 2 2 1 1 1 1 3 2 1 3 1 1 3 1 3 3 3 1 1 1 1 1 1 1 1 1 1 3 3 2 1 3 1 2 1 2 3
## [3886] 1 2 2 3 1 2 3 1 1 2 3 1 1 2 1 1 3 3 2 1 3 1 1 1 1 1 2 1 3 2 2 1 2 1 1 1 1
## [3923] 1 2 1 3 1 3 1 1 1 1 1 2 3 3 1 2 1 2 1 1 1 1 1 1 1 3 3 2 3 1 3 2 2 1 1 1 1
## [3960] 1 1 1 3 3 1 1 3 1 1 3 3 2 2 1 1 1 1 1 2 1 1 3 3 2 3 3 1 1 3 1 1 3 1 3 1 3
## [3997] 2 1 1 1 3 1 3 1 2 1 1 3 1 2 2 2 1 2 1 2 2 1 1 1 1 1 3 1 3 3 1 1 2 1 1 1 3
## [4034] 2 1 2 2 3 3 3 1 1 3 1 1 1 2 2 1 2 1 2 2 3 1 3 1 2 1 2 2 1 1 1 1 1 1 3 3 1
## [4071] 3 2 2 1 3 3 3 1 2 1 1 1 1 3 1 1 1 1 3 2 2 1 1 1 1 2 3 1 2 1 2 2 2 2 2 1 3
## [4108] 1 1 1 1 2 2 1 1 3 1 1 1 2 3 3 1 2 1 3 2 2 1 2 1 2 2 1 1 1 2 1 1 2 3 1 1 1
## [4145] 2 1 1 1 1 3 3 1 1 1 3 3 3 1 2 1 2 1 1 3 2 1 2 3 1 1 1 1 1 2 2 1 3 1 1 2 1
## [4182] 1 3 2 1 1 1 1 1 1 2 1 2 1 1 1 1 1 1 1 1 3 1 1 2 1 1 1 1 1 3 1 1 2 1 1 2 1
## [4219] 2 1 3 1 3 1 1 2 2 1 1 3 2 2 1 2 2 2 1 2 1 1 1 1 1 1 2 1 3 2 1 1 1 2 3 1 1
## [4256] 2 2 1 1 1 2 1 1 1 3 1 1 1 1 2 1 1 1 3 2 1 3 1 1 2 1 1 1 1 1 1 2 2 1 2 2 1
## [4293] 1 2 1 1 2 1 1 1 2 1 2 3 2 1 2 1 1 1 2 2 3 1 2 1 1 2 3 1 2 1 3 1 3 1 3 1 2
## [4330] 3 1 2 2 1 1 2 2 2 1 2 1 1 1 1 3 2 3 1 2 1 1 1 1 2 3 1 1 1 1 1 3 1 1 1 1 3
## [4367] 3 2 2 1 3 1 3 2 3 1 1 2 2 1 2 3 3 1 1 1 1 3 3 3 3 1 3 1 3 3 3 3 1 2 3 1 1
## [4404] 1 3 3 3 3 1 2 1 3 1 1 2 2 2 1 2 3 1 1 2 1 1 3 3 1 2 1 2 2 2 1 1 3 1 1 1 2
## [4441] 1 3 1 1 1 1 1 1 3 1 3 1 1 3 2 1 2 1 3 2 2 1 3 1 1 1 1 2 1 1 1 2 1 1 1 2 3
## [4478] 1 2 1 1 1 2 3 3 1 2 1 1 1 1 3 1 2 1 1 1 1 2 2 1 1 1 1 3 3 1 1 1 1 2 1 2 1
## [4515] 3 3 2 1 3 1 1 3 2 1 1 2 1 1 1 1 2 1 1 1 1 1 2 1 2 2 1 3 2 1 1 1 1 1 2 3 2
## [4552] 1 1 1 2 2 1 3 1 1 1 1 1 1 2 1 1 1 3 1 2 1 3 1 2 1 2 1 2 3 1 1 1 1 1 2 1 2
## [4589] 1 1 1 1 2 1 1 3 1 1 1 1 1 1 1 1 1 1 1 1 1 2 1 1 2 2 1 2 3 3 1 1 1 3 2 1 1
## [4626] 3 1 1 3 3 1 3 1 1 3 2 1 1 2 3 3 1 3 3 1 1 2 3 1 1 1 2 3 3 1 2 1 1 3 3 1 1
## [4663] 1 2 3 2 1 1 1 1 1 1 3 3 3 1 1 2 1 1 3 2 1 1 1 3 3 1 3 1 3 1 2 3 1 2 1 1 1
## [4700] 2 1 1 3 2 1 2 3 1 1 1 1 1 3 3 1 2 1 2 3 1 1 2 1 1 1 2 1 1 3 1 2 1 1 3 3 1
## [4737] 3 1 2 2 3 1 1 1 3 1 1 1 1 1 1 1 1 1 1 1 3 1 2 2 3 1 1 1 1 1 2 3 1 1 1 1 1
## [4774] 2 1 1 1 3 1 3 2 3 1 2 1 1 2 3 1 3 1 1 1 1 3 1 3 1 1 3 2 1 1 1 3 1 3 1 1 1
## [4811] 1 1 3 1 1 2 1 1 1 1 2 1 1 1 1 1 1 3 2 3 1 1 1 2 1 1 2 1 3 1 2 3 3 1 1 1 1
## [4848] 2 3 1 1 1 3 1 3 2 1 1 1 1 1 1 3 1 1 1 3 1 3 1 1 2 3 3 1 3 1 1 1 1 1 1 1 1
## [4885] 2 1 1 2 1 1 2 1 1 1 1 1 2 1 2 1 3 1 1 2 1 1 1 1 1 1 1 1 2 1 2 2 3 1 1 1 1
## [4922] 1 2 1 3 1 1 1 1 1 1 1 1 2 1 3 1 1 1 2 2 1 1 2 1 1 1 3 1 2 2 1 1 1 3 1 2 1
## [4959] 2 3 1 1 3 3 1 1 1 1 1 3 1 1 3 1 1 3 3 1 3 1 1 2 1 1 1 1 1 1 1 1 3 2 3 1 1
## [4996] 3 1 1 1 1 1 2 2 3 1 3 3 1 2 1 3 2 2 1 1 3 1 1 1 1 1 1 1 1 2 1 1 3 2 1 2 1
## [5033] 1 3 1 1 3 1 1 1 1 1 3 1 3 1 1 2 2 1 2 1 1 3 1 1 1 1 1 1 2 1 2 1 1 2 2 1 2
## [5070] 1 3 2 3 2 1 1 1 3 1 1 2 1 2 1 1 1 1 2 1 1 1 1 1 1 3 3 1 2 3 1 2 1 2 1 1 1
## [5107] 2 1 2 1 3 1 1 1 2 3 1 1 3 1 1 1 1 3 1 1 1 2 1 2 3 1 1 2 1 1 1 1 1 1 1 1 1
## [5144] 1 1 1 1 1 1 1 1 1 1 3 1 1 1 1 2 1 1 2 1 2 2 1 1 1 2 1 3 1 1 1 2 1 1 2 1 3
## [5181] 1 1 1 1 3 1 1 1 3 1 1 2 1 2 1 1 1 1 2 1 1 1 1 1 1 1 1 1 2 1 2 1 3 1 3 3 1
## [5218] 1 3 1 3 1 1 3 1 2 1 1 1 1 1 1 1 1 1 1 1 1 3 1 2 2 3 2 1 1 1 1 1 1 1 3 1 1
## [5255] 1 1 2 2 1 1 1 2 1 1 1 1 1 1 2 2 3 1 1 2 1 1 1 1 1 1 2 1 1 2 1 1 2 1 1 1 1
## [5292] 2 1 2 1 2 2 2 1 3 1 1 1 1 1 2 3 1 2 1 2 2 2 3 1 2 1 1 1 3 1 2 2 1 3 1 3 1
## [5329] 3 2 2 1 1 1 1 1 1 1 2 3 1 3 2 1 1 1 1 2 1 1 1 1 1 1 1 1 1 1 2 2 1 1 1 2 2
## [5366] 2 1 1 3 1 1 1 1 2 2 1 1 1 3 3 3 3 1 2 2 3 1 3 1 1 1 1 1 1 1 1 2 2 1 1 1 2
## [5403] 1 3 1 3 3 3 1 3 1 1 1 2 1 1 1 2 2 1 1 1 2 1 1 1 1 1 1 2 1 1 1 2 2 2 1 1 3
## [5440] 1 3 3 3 2 3 3 2 1 2 1 2 3 1 3 1 1 1 3 1 2 1 1 1 1 1 1 2 3 1 3 3 3 1 3 1 3
## [5477] 2 3 3 1 1 1 3 1 1 2 1 1 2 1 3 2 1 1 1 1 3 1 2 2 1 1 3 1 1 3 1 1 2 3 2 3 2
## [5514] 1 1 1 1 2 1 2 1 1 1 1 3 1 1 2 2 2 1 3 1 3 1 1 2 1 1 2 3 1 1 1 1 3 1 1 2 2
## [5551] 2 1 3 1 3 1 1 3 2 1 1 1 3 1 3 3 1 1 2 2 1 2 2 1 1 1 2 1 2 3 1 3 3 1 2 3 1
## [5588] 1 1 1 1 2 3 2 1 1 1 2 1 1 1 2 1 1 2 1 1 1 1 1 2 3 2 1 1 1 1 1 2 3 1 2 2 1
## [5625] 1 1 3 1 1 1 2 1 1 3 3 3 2 3 2 2 2 2 2 1 1 1 1 1 3 3 3 1 3 1 1 1 3 3 3 1 1
## [5662] 1 2 3 2 1 1 2 2 3 2 3 2 1 2 1 1 2 2 1 1 1 2 1 2 2 1 2 1 1 2 2 3 1 3 1 2 3
## [5699] 2 1 1 1 1 3 1 1 3 1 1 2 2 1 1 1 1 1 1 2 2 2 2 3 2 3 1 1 3 2 1 2 3 2 2 2 3
## [5736] 1 2 3 1 2 1 1 3 1 2 2 1 2 3 3 1 2 1 2 1 1 2 1 3 3 1 1 3 2 1 1 1 1 1 1 2 1
## [5773] 1 1 1 1 1 1 1 1 3 1 1 2 3 1 1 1 2 1 3 1 1 1 2 1 3 2 1 1 1 1 1 2 2 2 3 3 2
## [5810] 2 1 1 1 1 1 2 1 1 1 1 1 2 1 1 1 1 1 1 1 1 2 3 1 1 1 1 1 1 1 1 1 1 1 1 3 1
## [5847] 1 1 2 1 1 1 1 1 3 1 3 3 1 2 1 1 2 2 1 2 1 2 1 1 1 1 1 2 1 1 1 1 1 1 3 1 1
## [5884] 1 1 1 2 2 1 1 1 1 1 1 1 1 1 1 1 2 1 1 2 1 2 1 1 2 2 1 1 3 3 3 1 1 1 1 3 1
## [5921] 1 2 1 2 1 1 2 1 1 1 2 1 1 1 3 1 1 1 3 3 1 1 1 1 1 2 1 1 1 1 1 2 3 1 1 3 1
## [5958] 2 1 1 3 1 1 1 1 2 3 2 3 1 2 1 1 1 1 3 1 2 2 1 3 2 2 1 1 1 2 1 1 1 1 1 3 1
## [5995] 2 1 1 1 1 1 2 1 1 3 2 1 2 2 1 1 1 2 1 1 2 3 1 1 2 1 1 1 1 3 3 1 1 3 1 3 3
## [6032] 1 3 1 1 3 2 2 1 3 1 1 1 2 1 3 1 1 1 3 2 2 1 1 2 1 1 3 1 1 3 2 2 1 1 3 1 1
## [6069] 1 2 1 1 1 1 1 1 1 2 1 1 1 1 2 1 1 1 1 1 2 1 2 1 2 1 2 1 1 1 1 2 1 1 3 3 1
## [6106] 1 2 1 1 2 2 1 1 1 1 1 1 1 1 2 1 1 2 1 1 1 1 1 1 1 1 2 1 1 1 1 1 1 2 1 1 1
## [6143] 1 1 1 3 1 1 1 2 1 1 3 1 1 1 1 2 1 3 2 1 1 1 1 1 1 2 1 3 1 1 1 1 1 3 1 2 3
## [6180] 1 1 1 1 1 1 1 1 1 1 1 3 1 1 1 1 1 2 1 2 1 1 1 3 1 1 1 1 1 1 1 3 1 2 1 2 2
## [6217] 1 1 1 1 2 3 1 1 1 1 1 2 1 3 1 1 1 2 1 1 1 1 2 1 1 1 1 2 1 1 2 3 1 1 2 1 2
## [6254] 1 3 2 3 2 2 1 3 2 2 1 2 1 3 1 1 1 2 1 1 1 3 2 3 1 1 3 3 3 1 1 3 1 1 1 2 3
## [6291] 1 3 1 1 1 3 1 3 1 1 3 2 1 3 1 1 2 1 1 3 2 2 2 1 2 1 1 1 1 1 1 1 1 3 1 1 2
## [6328] 3 3 3 1 1 3 1 2 3 1 1 1 1 1 1 1 2 1 1 1 2 1 1 1 1 1 1 1 2 1 3 1 1 3 3 3 1
## [6365] 3 3 1 3 3 1 1 1 1 1 3 1 3 3 3 1 1 1 1 3 1 1 2 2 1 1 1 1 1 1 1 3 1 1 1 1 1
## [6402] 1 2 1 1 1 1 3 3 1 1 1 1 1 1 1 1 1 1 2 1 1 3 1 1 1 3 1 3 1 1 3 1 1 1 1 3 3
## [6439] 1 1 1 1 1 1 1 1 1 1 3 1 1 1 1 3 3 1 3 2 1 1 1 1 1 1 3 1 3 1 2 1 2 1 1 2 1
## [6476] 1 1 3 1 1 1 2 2 1 1 1 1 1 2 2 3 2 1 1 1 1 1 3 1 1 3 3 1 1 1 2 3 3 2 2 1 3
## [6513] 1 1 1 2 1 1 1 1 1 1 1 1 1 1 1 2 1 2 2 1 1 1 1 3 1 1 1 1 2 2 1 1 1 1 1 2 1
## [6550] 1 1 3 3 1 3 1 1 3 2 1 3 1 2 1 1 1 2 1 1 1 1 2 2 2 1 1 1 1 1 2 1 1 1 1 1 1
## [6587] 2 1 1 1 2 1 1 1 2 1 1 1 2 3 2 1 1 1 1 1 1 1 1 1 1 1 1 1 3 1 1 2 1 1 1 1 1
## [6624] 1 1 1 1 1 3 2 1 3 1 2 1 1 1 1 1 1 2 1 1 2 1 1 3 1 1 1 1 2 1 1 2 1 1 1 1 1
## [6661] 1 1 1 1 1 1 1 3 1 1 3 1 2 1 1 1 1 2 2 2 3 2 1 1 2 1 3 2 3 3 1 1 2 2 1 1 1
## [6698] 3 3 2 3 1 2 1 2 2 2 2 2 1 3 2 3 3 1 2 3 2 1 1 2 2 2 1 1 1 1 1 1 1 3 2 1 2
## [6735] 3 1 3 3 3 1 1 1 1 2 2 2 3 3 1 1 3 1 1 2 3 2 2 2 1 2 3 1 2 2 1 1 1 3 2 1 1
## [6772] 3 1 1 1 2 1 3 2 2 2 2 1 1 3 3 2 1 1 1 2 2 1 3 2 1 3 1 3 1 1 3 3 2 2 1 2 1
## [6809] 2 3 3 3 1 1 1 3 1 3 1 1 1 2 1 1 2 1 2 2 2 1 3 1 2 1 3 1 3 1 1 1 3 1 1 1 1
## [6846] 1 1 1 1 3 1 2 1 1 1 2 3 1 1 1 2 1 2 2 1 1 1 1 1 1 2 1 1 1 1 1 1 2 1 1 1 1
## [6883] 1 2 3 1 1 1 1 1 2 1 1 1 3 1 1 2 1 1 1 1 1 1 2 1 1 1 1 3 1 1 1 1 1 1 3 1 1
## [6920] 1 1 1 2 1 2 2 1 2 1 1 1 1 1 1 1 1 2 2 1 1 1 2 1 1 1 2 2 1 1 1 1 2 1 2 1 1
## [6957] 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 1 2 1 2 1 2 2 1 1 1 1 3 1 2 1 3 1 1 2 1 1 1
## [6994] 1 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 1 1 1 1 1 3 1 1 1 1 2 3 2 1 2 1 2 1 2
## [7031] 1 1 3 1 1 2 1 1 3 1 1 1 1 1 1 2 1 3 1 1 1 3 1 3 3 1 1 3 1 3 3 1 1 1 1 2 1
## [7068] 1 3 1 1 1 1 3 1 1 3 1 3 1 1 2 2 2 2 2 1 1 1 1 3 1 1 2 3 3 3 3 3 1 1 1 2 1
## [7105] 1 1 1 1 2 3 1 1 1 1 1 2 3 2 3 1 2 1 1 1 1 1 3 3 1 3 1 2 3 2 3 1 2 3 1 2 1
## [7142] 1 2 1 3 1 1 2 1 1 1 1 1 3 3 1 1 1 1 1 3 2 1 1 1 3 3 1 1 3 3 1 3 1 1 1 1 1
## [7179] 3 1 2 3 1 2 3 1 1 2 1 3 1 1 1 2 1 2 1 1 1 1 1 2 3 1 3 2 1 1 1 3 1 1 2 1 1
## [7216] 1 3 1 1 1 2 3 3 1 1 1 1 3 3 1 1 1 1 1 3 3 1 1 1 1 1 2 1 1 1 1 1 1 1 1 1 2
## [7253] 3 1 1 2 3 2 3 2 1 3 1 1 3 1 2 3 1 2 1 1 3 3 1 3 1 1 2 1 1 1 1 2 2 1 2 3 1
## [7290] 2 2 1 1 2 1 3 2 1 1 3 3 1 1 3 1 2 1 1 1 1 1 1 2 1 1 3 1 3 1 1 3 1 1 1 1 1
## [7327] 1 1 1 1 1 1 2 1 1 3 1 2 2 3 1 2 3 1 1 1 1 1 1 1 1 1 1 2 2 1 2 1 3 1 1 2 1
## [7364] 3 1 2 1 2 1 3 1 1 1 1 1 2 1 1 1 1 1 1 2 1 2 1 1 1 1 1 1 1 2 1 1 1 2 3 1 1
## [7401] 1 1 1 1 1 1 1 2 1 1 1 1 1 2 1 1 1 2 2 1 1 1 3 3 1 1 1 3 1 1 1 1 3 3 3 1 2
## [7438] 1 2 1 1 3 3 1 1 1 1 2 2 3 1 2 2 1 2 2 3 3 1 3 3 1 2 2 2 1 3 1 1 3 3 2 2 3
## [7475] 1 3 1 3 3 3 1 2 2 2 1 1 3 1 3 3 1 2 3 1 1 1 1 1 1 1 1 3 3 1 1 1 1 2 3 2 3
## [7512] 1 1 1 1 1 1 1 3 2 1 1 1 1 1 1 2 1 1 1 1 2 1 2 1 1 2 3 3 1 3 2 2 1 2 1 1 2
## [7549] 1 2 1 2 2 3 2 3 3 2 3 1 1 3 1 3 3 1 1 2 1 1 2 2 1 1 3 2 3 1 1 1 1 2 1 1 2
## [7586] 1 1 3 1 1 1 3 2 3 2 3 2 1 2 1 3 1 1 2 3 1 1 2 1 1 2 1 1 1 1 1 3 1 1 1 1 1
## [7623] 1 1 1 2 3 1 1 1 1 1 3 2 1 1 3 1 1 2 2 1 2 1 1 1 1 3 1 1 1 2 2 1 1 3 1 1 1
## [7660] 2 1 2 1 1 1 2 1 1 2 1 1 3 1 1 1 1 1 1 1 3 1 1 1 1 1 1 2 1 3 2 3 3 1 1 1 1
## [7697] 2 1 2 1 2 2 1 1 2 3 1 1 1 3 1 2 1 1 1 1 2 3 1 1 1 3 1 2 1 1 1 1 2 2 1 1 2
## [7734] 1 3 1 3 3 2 3 1 2 1 1 2 1 1 2 1 1 3 2 1 2 1 1 1 1 2 1 1 1 2 1 1 2 1 1 1 2
## [7771] 2 2 1 1 1 2 3 1 1 3 2 3 1 1 3 1 1 1 1 3 1 3 1 1 3 3 3 2 3 3 2 3 3 1 1 3 1
## [7808] 3 3 1 2 2 3 1 1 1 2 1 3 1 1 1 1 2 2 1 2 2 1 2 3 2 2 1 3 1 3 2 1 1 3 3 3 1
## [7845] 1 2 2 3 3 3 1 1 1 3 2 2 1 1 2 1 1 1 1 2 2 3 1 1 2 2 3 1 1 2 1 3 1 2 2 2 1
## [7882] 1 2 1 2 1 1 1 2 1 2 1 2 1 1 1 1 2 2 3 1 3 2 1 2 1 1 1 1 1 1 1 1 1 1 3 3 2
## [7919] 1 2 1 1 2 1 2 1 1 1 1 2 1 2 1 1 1 2 1 1 1 1 3 1 1 3 1 1 1 3 2 1 2 1 1 1 3
## [7956] 1 1 3 1 3 3 3 1 1 1 1 1 1 3 1 1 1 1 1 1 1 2 1 3 1 2 1 1 1 3 1 3 1 3 2 1 1
## [7993] 3 3 1 1 3 1 1 2 1 1 1 3 1 1 1 1 1 1 3 3 3 1 2 1 3 2 1 1 2 1 1 3 1 2 3 2 3
## [8030] 1 3 1 1 1 1 3 1 1 1 1 1 1 3 3 3 1 2 2 1 1 2 2 1 1 1 1 2 1 1 1 1 1 2 1 1 1
## [8067] 2 2 1 3 2 1 1 1 1 1 1 1 3 1 1 3 1 1 3 1 1 1 2 1 2 1 2 1 1 1 2 2 1 1 1 2 1
## [8104] 1 1 1 1 2 1 1 1 3 3 1 1 1 3 1 2 3 1 1 1 1 1 1 1 1 1 1 3 1 1 1 3 1 1 1 1 3
## [8141] 2 1 1 1 2 1 1 1 1 1 3 1 3 1 1 1 1 2 3 1 3 3 2 1 1 1 1 1 1 2 3 3 1 1 1 1 1
## [8178] 1 1 1 1 2 1 1 2 1 2 1 1 1 1 1 1 1 1 2 2 1 1 1 1 1 2 1 1 3 1 3 3 3 1 1 1 1
## [8215] 1 1 3 3 1 1 1 3 3 1 3 1 1 1 1 3 3 2 1 2 1 2 1 1 3 1 1 1 2 1 1 1 1 3 3 1 2
## [8252] 3 1 1 2 1 3 1 1 1 3 1 3 3 3 1 1 3 3 3 1 1 1 1 1 3 1 3 3 1 3 3 1 1 3 2 3 2
## [8289] 2 3 1 3 1 1 2 1 1 1 3 1 1 3 3 3 2 1 3 3 2 2 1 1 1 3 1 1 3 2 1 2 3 1 3 2 1
## [8326] 1 1 1 1 3 1 1 1 1 1 1 3 1 1 2 1 1 3 3 3 1 1 2 2 1 1 1 1 3 1 2 3 3 1 2 1 2
## [8363] 3 3 1 2 1 3 1 1 3 1 1 1 1 1 1 1 1 1 3 2 1 1 2 1 2 2 1 1 2 1 3 1 2 1 1 2 2
## [8400] 3 1 1 3 3 2 1 2 1 2 1 1 1 2 3 1 1 1 1 1 3 1 2 1 1 2 3 1 1 2 1 1 1 1 1 1 1
## [8437] 1 1 1 1 1 3 3 3 2 3 2 1 1 1 2 1 2 2 1 1 1 1 1 1 1 1 3 1 1 1 1 2 1 1 1 3 1
## [8474] 3 1 3 1 3 2 1 1 2 1 1 1 1 1 1 1 2 1 1 3 1 1 1 2 1 1 1 1 1 1 1 1 2 1 3 1 1
## [8511] 1 1 1 2 1 1 3 1 2 1 1 1 1 1 1 1 2 2 2 2 1 3 1 1 3 1 2 1 1 2 1 1 1 1 2 1 1
## [8548] 1 2 3 1 1 1 1 1 1 1 1 1 3 2 1 1 1 1 1 3 1 1 3 1 1 1 1 1 1 1 1 1 3 1 1 1 1
## [8585] 2 3 3 1 1 2 3 2 3 1 1 3 3 2 1 2 1 1 2 2 1 1 3 1 1 2 3 1 3 1 1 2 1 1 1 3 1
## [8622] 1 3 1 1 1 2 2 1 1 3 1 1 1 1 1 1 1 1 3 3 2 2 1 2 3 1 1 2 1 1 3 3 1 1 1 1 3
## [8659] 1 3 1 3 3 1 3 1 1 2 1 1 1 1 1 3 1 3 1 3 2 1 2 2 3 1 2 1 1 2 1 1 3 1 2 2 1
## [8696] 2 3 3 3 3 1 1 1 3 3 2 1 1 2 2 2 1 3 2 2 2 1 2 2 1 1 1 1 1 1 1 1 3 1 1 1 1
## [8733] 1 1 1 1 3 1 1 3 3 3 2 3 2 3 1 1 2 1 1 2 2 3 1 3 3 3 3 1 3 3 3 1 3 2 1 3 2
## [8770] 1 1 2 1 2 1 1 2 3 1 1 1 3 1 1 1 1 2 3 1 1 3 1 2 1 1 3 3 1 1 2 1 1 1 1 1 2
## [8807] 1 1 1 1 1 1 1 2 1 1 1 2 1 1 1 1 1 1 2 1 1 2 2 2 1 2 1 2 1 3 1 1 2 1 1 1 1
## [8844] 2 2 1 3 2 1 2 2 1 2 1 2 2 1 3 1 3 1 1 2 1 2 3 1 1 1 2 1 2 1 1 2 1 1 1 1 1
## [8881] 1 1 3 3 1 3 1 2 1 1 2 1 3 1 1 3 1 2 1 1 1 2 2 1 1 1 2 1 1 1 1 1 1 2 1 1 1
## [8918] 1 2 2 1 1 1 1 1 2 1 3 1 1 1 1 2 1 1 1 1 3 1 1 2 3 2 2 1 1 1 2 1 1 2 3 1 1
## [8955] 1 1 1 2 1 1 1 1 1 1 2 2 1 1 1 1 1 3 1 2 1 1 2 2 2 1 1 2 2 1 2 1 2 1 1 1 2
## [8992] 1 1 3 3 1 2 2 2 1 2 2 1 2 1 1 3 1 1 1 1 2 1 1 3 3 1 2 1 3 1 1 1 1 2 2 2 1
## [9029] 1 1 1 1 2 2 1 1 2 1 2 2 1 1 3 1 2 1 1 1 2 3 1 1 1 1 2 1 3 3 1 1 1 1 2 1 3
## [9066] 3 2 1 1 3 3 3 2 2 1 1 1 1 3 2 1 2 3 1 1 2 1 1 3 1 2 3 2 1 3 3 3 1 1 1 1 1
## [9103] 1 1 2 3 1 1 1 2 2 1 3 2 1 3 1 2 2 3 3 1 3 1 2 1 3 1 3 1 3 1 2 1 2 1 1 1 1
## [9140] 1 3 1 1 3 3 2 2 2 1 1 1 1 1 2 1 1 2 1 1 1 1 3 1 1 1 1 3 1 2 1 3 1 3 2 2 2
## [9177] 2 1 1 2 3 1 2 3 1 2 2 1 3 1 1 3 1 1 2 1 1 1 1 3 1 2 1 1 1 2 2 1 1 1 1 2 3
## [9214] 3 1 3 3 1 1 1 1 3 2 3 1 3 1 1 1 1 1 2 1 3 1 2 1 3 1 1 1 1 1 3 2 3 1 1 1 2
## [9251] 1 3 1 1 3 1 1 3 2 1 2 2 3 2 1 1 3 1 1 1 3 2 3 3 1 1 3 2 1 1 1 1 1 1 1 2 2
## [9288] 1 3 1 1 3 1 3 1 2 1 1 1 2 1 1 1 1 3 1 1 1 2 2 3 1 1 1 2 2 1 3 1 1 1 1 1 1
## [9325] 1 2 1 2 2 1 2 2 3 1 1 1 1 2 1 1 3 3 1 1 1 1 2 1 1 1 1 1 1 2 2 1 1 1 3 1 1
## [9362] 1 2 1 1 1 1 1 1 1 3 1 2 1 2 1 2 1 3 1 1 1 1 2 1 1 1 1 1 1 2 1 3 1 1 1 1 1
## [9399] 2 1 1 1 2 1 1 3 2 2 2 1 1 2 1 1 2 1 1 2 1 1 1 1 1 1 1 1 2 1 3 2 1 2 1 1 1
## [9436] 2 1 2 1 2 1 1 3 2 1 1 2 2 1 1 1 2 3 1 1 1 1 2 1 1 1 1 1 2 1 1 1 2 1 1 1 1
## [9473] 2 1 1 1 1 1 1 1 2 3 1 1 2 2 2 1 1 1 1 2 1 1 1 1 1 1 3 1 1 2 1 1 1 1 1 1 3
## [9510] 2 3 1 1 1 1 1 3 1 1 1 1 1 2 1 1 3 2 1 2 3 1 1 3 2 3 1 1 1 1 1 1 1 1 2 1 3
## [9547] 2 1 3 1 1 1 1 1 2 1 1 1 1 3 1 1 2 1 2 1 1 1 2 1 3 1 2 2 1 3 3 3 2 3 1 2 1
## [9584] 1 1 1 1 2 1 1 1 1 1 2 2 2 1 1 1 1 2 1 3 1 1 1 1 3 1 1 1 3 1 2 3 1 2 1 3 1
## [9621] 1 1 3 1 3 1 3 2 1 1 1 1 1 1 1 1 1 2 2 2 1 3 3 1 2 2 1 1 1 1 1 1 1 2 2 1 3
## [9658] 1 2 3 3 3 1 1 2 1 1 1 2 1 1 1 1 2 3 2 1 2 1 1 1 1 1 1 1 1 1 1 1 3 1 1 1 3
## [9695] 1 1 1 2 2 1 2 2 1 2 3 1 1 2 1 1 1 2 1 1 2 1 1 1 2 1 1 1 1 1 1 2 2 1 1 2 3
## [9732] 1 2 1 2 1 3 3 1 1 2 1 1 3 3 1 2 3 1 1 1 1 3 3 1 3 3 2 1 2 3 1 1 1 1 3 1 2
## [9769] 1 1 1 1 1 1 1 1 3 2 3 3 3 2 1 2 2 1 1 1 3 1 1 2 2 3 2 1 3 1 1 1 2 3 2 2 1
## [9806] 1 2 1 1 1 1 2 3 2 2 1 1 2 1 3 1 3 1 1 1 1 1 3 3 1 2 1 3 1 1
##
## Within cluster sum of squares by cluster:
## [1] 18653.424 10006.418 7949.251
## (between_SS / total_SS = 8.0 %)
##
## Available components:
##
## [1] "cluster" "centers" "totss" "withinss" "tot.withinss"
## [6] "betweenss" "size" "iter" "ifault"
plot(pca_result$x[, 1:2], col = kmeans_result$cluster, pch = 19,
xlab = "PC1", ylab = "PC2", main = "Clusters of Transactions")
points(kmeans_result$centers %*% pca_result$rotation[, 1:2], col = 1:optimal_k, pch = 4, cex = 2)
loadingss<- pca_result$rotation
pc1_contributions <- sort(abs(loadingss[, 1]), decreasing = TRUE)
print("top_pc1 contributers:\n")
## [1] "top_pc1 contributers:\n"
print(pc1_contributions[1:10])
## other vegetables whole milk root vegetables yogurt
## 0.2286435 0.2081489 0.1995003 0.1829309
## whipped/sour cream tropical fruit butter domestic eggs
## 0.1739899 0.1718576 0.1614764 0.1584362
## citrus fruit pip fruit
## 0.1462859 0.1460161
# Sort loadings for PC2
pc2_contributions <- sort(abs(loadingss[, 2]), decreasing = TRUE)
print("top_pc2 contributers:\n")
## [1] "top_pc2 contributers:\n"
print(pc2_contributions[1:10])
## soda shopping bags chocolate root vegetables specialty bar
## 0.2487323 0.2129730 0.2054469 0.1943659 0.1752641
## herbs waffles salty snack white bread candy
## 0.1733047 0.1728789 0.1687948 0.1653956 0.1637656
Even after performing PCA, the plot above shows significant overlap between clusters. This suggests that many transactions share similar items, which is expected since each point represents a transaction containing multiple items. However, this overlap highlights a limitation of using k-means clustering for this dataset.
K-means clustering assumes spherical clusters of equal size, which is often not realistic for transactional data where clusters can be irregularly shaped, and transactions may share common items. Additionally, while PCA reduces dimensionality, it focuses on maximizing variance rather than explicitly separating clusters, which may contribute to the observed overlap.