拓端tecdat|R語(yǔ)言關(guān)聯(lián)規(guī)則模型(Apriori算法)挖掘雜貨店的交易數(shù)據(jù)與交互可視化
原文鏈接:http://tecdat.cn/?p=22732?
原文出處:拓端數(shù)據(jù)部落公眾號(hào)
關(guān)聯(lián)規(guī)則挖掘是一種無(wú)監(jiān)督的學(xué)習(xí)方法,從交易數(shù)據(jù)中挖掘規(guī)則。它有助于找出數(shù)據(jù)集中的關(guān)系和一起出現(xiàn)的項(xiàng)目。在這篇文章中,我將解釋如何在R中提取關(guān)聯(lián)規(guī)則。
關(guān)聯(lián)規(guī)則模型適用于交易數(shù)據(jù)。交易數(shù)據(jù)的一個(gè)例子可以是客戶的購(gòu)物歷史。
數(shù)據(jù)分析的第一件事是了解目標(biāo)數(shù)據(jù)結(jié)構(gòu)和內(nèi)容。出于學(xué)習(xí)的目的,我認(rèn)為使用一個(gè)簡(jiǎn)單的數(shù)據(jù)集更好。一旦我們知道了這個(gè)模型,就可以很容易地把它應(yīng)用于更復(fù)雜的數(shù)據(jù)集。
在這里,我們使用雜貨店的交易數(shù)據(jù)。首先,我們創(chuàng)建一個(gè)數(shù)據(jù)框并將其轉(zhuǎn)換為交易類型。
讀取數(shù)據(jù)
n=500 # 交易數(shù)量
trans <- data.frame() # 收集數(shù)據(jù)的數(shù)據(jù)框架
創(chuàng)建數(shù)據(jù)并將其收集到交易數(shù)據(jù)框中。
for(i in 1:n)
{
count <- sample(1:3, 1) # 從1到3的物品計(jì)數(shù)
如果(i %% 2 == 1)
{
if(!add_product %in% selected)
{
tran <- data.frame(items = add_product, tid = i)
檢查交易數(shù)據(jù)框中的數(shù)據(jù)。

接下來(lái),我們需要將生成的數(shù)據(jù)框轉(zhuǎn)換為交易數(shù)據(jù)類型。?
as(split([, "items"], [, "tid"]), "transa")

為了檢查交易數(shù)據(jù)的內(nèi)容,我們使用 inspect() 命令。?

挖掘規(guī)則
sort(rules_1, dby = "confidence")


.......
我們從上面的列表中獲取第一個(gè)rhs項(xiàng)(規(guī)則后項(xiàng))來(lái)檢查該項(xiàng)的規(guī)則。但如果你知道目標(biāo)項(xiàng)目,可以在參數(shù)中只寫rhs="melon"。?
inspect(rules_1@rhs[1])

> rhs_item <- gsub("\\}","", rhs)

我們?yōu)槲覀兊膔hs_item建立規(guī)則

按 "置信度 "排序并檢查規(guī)則
sort(rules_2, "confidence")

結(jié)果可視化
最后,我們從規(guī)則集_2中繪制出前5條規(guī)則。
> plot(rules_2[1:5])

繪制全部規(guī)則

交互可視化
繪制出前5條規(guī)則
precision = ?3
igraphLayout = ?layout_nicely
list(nodes = nodes, edges = edges, nodesToDataframe = nodesToDataframe,
edgesToDataframe = edgesToDataframe,
x$legend <- legend
htmlwidgets::createWidget( x, width = width,
height = height)

繪制全部規(guī)則



最受歡迎的見解
1.采用spss-modeler的web復(fù)雜網(wǎng)絡(luò)對(duì)所有腧穴進(jìn)行分析
2.用R語(yǔ)言和python進(jìn)行社交網(wǎng)絡(luò)中的社區(qū)檢測(cè)
3.R語(yǔ)言文本挖掘NASA數(shù)據(jù)網(wǎng)絡(luò)分析,tf-idf和主題建模
4.在R語(yǔ)言中使用航空公司復(fù)雜網(wǎng)絡(luò)對(duì)疫情進(jìn)行建模
5.python隸屬關(guān)系圖模型 基于模型的網(wǎng)絡(luò)中密集重疊社區(qū)檢測(cè)
6.使用Python和SAS Viya分析社交網(wǎng)絡(luò)
7.關(guān)聯(lián)網(wǎng)絡(luò)分析:已遷離北京外來(lái)人口的數(shù)據(jù)畫像
8.情感語(yǔ)義網(wǎng)絡(luò):游記數(shù)據(jù)感知旅游目的地形象
9.用關(guān)聯(lián)規(guī)則數(shù)據(jù)挖掘探索藥物配伍中的規(guī)律