目标
针对667条宠物商品的搜索关键字进行聚类,将相似度高的条目聚为一类。在用户搜索某一商品时,电商平台能据此为用户展示类似的商品,从而提高用户的购物体验。
思路
首先明确这是一个聚类问题,而不是分类。因为商品类目本身是没有标签的,用机器学习的话来说,这是一个无监督学习的问题。接着,分析大致做法:
1. 数据导入
2. 处理数据(转化为语料库,再进行清洗过程)
3. 创建文档词条矩阵dtm,是一个稀疏矩阵
4. 对稀疏的矩阵进行降维,并转为标准矩阵格式
5. 聚类分析
- kmeans聚类
- 层次聚类
6. 检验聚类结果
过程
1.数据导入
setwd("F:/研究生/课程/R")
Raw <- read.csv("Raw.csv", header = TRUE)
Raw <- Raw[,1]
Raw <- as.matrix(Raw)
head(Raw)
查看前6行的商品词条
[1] "CAT TREE POST SCRATCHER FURNITURE PLAY HOUSE PET BED KITTEN TOY BEIGE"
[2] "DELUXE CAT TREE 36INCH CONDO FURNITURE SCRATCHING POST PET HOUSE PLAY TOY"
[3] "SMALL WARMING CAT DOG COVERED BED HOOD MICROFLEECE LINING FOAM FILLED"
[4] "PET HEATING PAD RADIENT BED WARMER CAT DOG USA SELLER FREE SHIPPING"
[5] "OUTDOOR HEATED PAD KITTY PAD"
[6] "SUNNY SEAT WINDOW CAT BED"
2. 处理数据
调用tm包——文本挖掘常用的R包
library(tm)
corp <- Corpus(DataframeSource(Raw))
writeLines(as.character(corp[[2]]))
lapply(corp, as.character)
可以查看某个文档以及每个文档的内容:
第2个文档包含的词条内容是:
DELUXE