根据近年电子商务数据使用R语言进行词云绘制
一.获取数据
本来想使用今年的双十一数据进行操作的,但是数据没找到,这里为大家提供了2013-2018年的电子商务数据。需要的家人们自取:
链接: link
提取码:1234
二.数据集处理
分析
首先先对数据进行初步分析,其属性如下:
属性 | 中文释义 |
---|---|
Product | 产品 |
Product_Brand | 产品_品牌 |
Item_Category | 项目_类别 |
Subcategory_1 | 子类别_1 |
Subcategory_2 | 子类别_2 |
Item_Rating | 项目等级 |
Data | 日期 |
Selling_Price | 售价 |
导入数据并对数据进行处理
导入数据
mydata<-read.csv('D:\\R\\Train.csv',header = TRUE)
mydata<-data.frame(mydata)
head(mydata,10)
剔除数据第1,2,7列
mydata<-mydata[-c(1,2)]#剔除第1到第2列
mydata<-mydata[-c(5)]#剔除第7列
head(mydata,10)
查看数据是否存在缺失值
本数据不存在缺失值不需要后续操作
sum(is.na(mydata)) #判断缺失值个数
根据项目等级、售价对数据进行综合排序
newData<-mydata[order(-mydata$Item_Rating,-mydata$Selling_Price),]
head(newData,10)
创建data.fram(与表类似)
#选取一个属性
df<-data.frame(newData$Item_Category)
df1<-table(df)
df1
提取元素与词频并生成指定词频表
#提取元素
names(df1)
#提取频率
as.numeric(df1)
#指定频率
df2<-as.data.frame(df1)
df2
三.词云绘制
绘制词云
#绘制词云
wordcloud2(df2,
size = 1, # 字体大小
fontFamily = 'Segoe UI', # 字体
fontWeight = 'bold', # 字体粗细
color = 'random-dark', # 字体颜色
backgroundColor = "white", # 背景颜色
minRotation = -pi/4, # minRotation和maxRotation控制文本旋转角度的范围
maxRotation = pi/4,
rotateRatio = 0.4, # 文本旋转的概率 0.4表示大约有40%的词发生了旋转
shape = "circle" # 轮廓形状
)