python呼叫R語言,關聯規則視覺化

2022-07-01 16:09:10 字數 2076 閱讀 3700

首先當然要配置r語言環境變數什麼的

d:\r-3.5.1\bin\x64; 

d:\r-3.5.1\bin\x64\r.dll;

d:\r-3.5.1;

d:\programdata\anaconda3\lib\site-packages\rpy2;

本來用python也可以實現關聯規則,雖然沒包,但是視覺化挺麻煩的

view code

import rpy2.robjects as robjects

b=('''

install.packages("arules")

install.packages("arulesviz")

''')

robjects.r(b)

然後就是主**了

import rpy2.robjects as robjects

a=('''encoding("utf-8")

setwd("f:/goverment/aprior")

all_data

colclasses=c("factor","factor","factor","factor","factor","factor","factor","factor","factor","factor","factor","factor"))

library(arules)

rule=apriori(data=all_data[,c(1,4,5,6,7,8,9,10,12)], parameter = list(support=0.05,confidence=0.7,minlen=2,maxlen=10))

''')

robjects.r(a)

robjects.r('''

rule.subset1)

#inspect(rule.subset)

rules.sorted

subset.matrix

lower.tri(subset.matrix,diag=t)

subset.matrix[lower.tri(subset.matrix,diag = t)]

redundant=1 #這五條就是去冗餘(感興趣可以去網上搜),我雖然這裡寫了,但我沒有去冗餘,我的去了以後乙個規則都沒了

which(redundant)

rules.pruned

#inspect(rules.pruned) #輸出去冗餘後的規則

''')

c=('''

library(arulesviz)#掉包

plot(subrules,method = "graph")#畫圖

#dev.off()

rule.sorted

rules.write

write.csv(rules.write,"f:/goverment/aprior/newrules.csv",fileencoding="utf-8")

''')

robjects.r(c)

#取出儲存的規則,放到乙個列表中

from pandas import read_csv

data_set = read_csv("f:/goverment/aprior/newrules.csv")

data = data_set.values[:, :]

rul =

for line in data:

ls =

for j in line:

try :

j=float(j)

if j>0 and j<=1:

j=str(round(j*100,2))+"%"

else:

except:

for line in rul:

print(line)

R語言資料探勘2 1 2 1 關聯規則

2.1.2.1 關聯規則 關聯分析可以從海量資料集中發現有意義的關係,這種關係可以表示成關聯規則的形式或頻繁項集的形式。具體的關聯分析演算法將在後面乙個章節中給出。關聯規則挖掘旨在發現給定資料集 事務資料集或其他序列 模式 型別資料集 中的結果規則集合。給定預先定義的最小支援度計數s和置信度c,給定...

R語言 資料探勘 R語言如何做關聯規則?

一 前言 提到資料探勘,我們第一反應就是之前聽到的啤酒和尿不濕的故事,該故事就是典型的資料探勘中的關聯規則。購物籃分析區別於傳統的線性回歸的主要區別為,關聯分析針對離散資料 下面我們利用r語言的arules包及apriori演算法對商品交易資料進行關聯規則挖掘,二 常見關聯規則 關聯規則 牛奶 雞蛋...

R語言資料探勘值關聯規則挖掘

關聯規則挖掘步驟及 如下 設定工作目錄 setwd e project rexample enterpresponser apriori 載入兩個包 library matrix library arules 讀取資料 幫助文件 tr read.transactions my transaction...