2017-05-28 3 views
0

Text mining en R // Comment ajouter des poids d'analyse d'associationComment ajouter des poids d'analyse d'association

Je fais l'analyse de liaison avec le fichier TXT. Mon code est le même maintenant. Il n'y a aucune indication de quel article est plus pertinent.

Si vous voulez augmenter la taille du cercle, = haute fréquence

Je veux augmenter l'épaisseur de la ligne = support haute. Que dois-je faire?

Nous vous remercions de votre conseil.

library(KoNLP) 
library(RColorBrewer) 
library(wordcloud) 

text1<-readLines(file.choose()) 
text1 
Encoding(text1)<- "UTF-8" 


text1 <- readLines(text1) 
lword <- Map(extractNoun,text1) 
lword <- unique(lword) 
lword <- sapply(lword, unique) 
filter1 <- function(x){ 
    nchar(x) <= 4 && nchar(x) >= 2 && is.hangul(x) 
} 
filter2 <- function(x){ 
    Filter(filter1, x) 
} 
lword <- sapply(lword, filter2) 
install.packages("arules") 
library(arules) 
wordtran <- as(lword, "transactions") 
wordtable <- crossTable(wordtran) 
tranrules <- apriori(wordtran, parameter=list(supp=0.01, conf=0.05)) 
inspect(tranrules) 
rules <- labels(tranrules, ruleSep=" ") 
rules <- sapply(rules, strsplit, " ", USE.NAMES=F) 
rulemat <- do.call("rbind", rules) 
#---------------------------------------------  
#▽Association analysis visualization 
#--------------------------------------------- 
install.packages("igraph") 
library(igraph) 
ruleg <- graph.edgelist(rulemat[c(12:59),], directed=F) 
plot.igraph(ruleg, vertex.label=V(ruleg)$name, 
      vertex.label.cex=1.2, vertex.label.color='black', 
      vertex.size=20, vertex.color='gray', vertex.frame.color='blue') 
+0

Pouvez-vous ajouter le résultat de 'dput (ruleg)' à votre poste? En outre, _ "Si vous voulez augmenter la taille du cercle, je veux augmenter l'épaisseur de la ligne, que dois-je faire?" cela n'a pas beaucoup de sens pour moi. Qu'est-ce que tu veux? Augmenter les tailles de vertex, augmenter les tailles des bords, les deux, ..? Précisez s'il vous plaît. :) – lukeA

+0

@lukeA augmenter la taille du cercle, = haute fréquence ou je veux augmenter l'épaisseur de la ligne = support élevé – koko

Répondre

0

Vous pouvez faire

library(igraph) 
g <- sample_pa(10) 
V(g)$freq <- runif(vcount(g), 1, 10) 
E(g)$supp <- rnorm(ecount(g)) 
vsize <- c(10, 20) 
esize <- c(1, 5) 
plot(
    g, 
    vertex.size=scales::rescale(V(g)$freq, vsize), 
    edge.width=scales::rescale(E(g)$supp, esize) 
)