2015-05-23 17 views
1

下面的代码产生一个简单的比较云:řcomparison.cloud角位置

library(tm) 
library(wordcloud) 
text1<- "cat cat dog dog dog bird bird bird bird bike bike bike" 
text2<- "cat cat dog dog dog dog fish fish fish fish car car" 
tmpText <- data.frame(c(text1, text2)) 
row.names(tmpText)<- c("text1", "text2") 
ds <- DataframeSource(tmpText) 
corp <- Corpus(ds) 
corp <- tm_map(corp, PlainTextDocument) 
corp <- tm_map(corp, content_transformer(tolower)) 
corp<- tm_map(corp, removePunctuation) 
tm <- TermDocumentMatrix(corp) 
tm<- as.matrix(tm) 
colnames(tm) <- c("text1", "text2") 
comparison.cloud(tm, , scale=c(5, 1)) 

我有2个问题:

1-如果两个词有在多个文档中的相同频率,如何封装决定将其显示在一个子云中VS其他

2-根据文档:“每个字...其角位置由最大发生的文档决定。”我多次运行比较云,没有种子,我无法理解解释,我做了谷歌搜索解释,没有发现太多,在这种情况下,“角位置”是什么意思?

帮助是极大的赞赏

MJJ

回答

0

这里是我如何comparison.cloud勾画出结果的理解。开始与术语文档矩阵:

> tm 
     Docs 
Terms text1 text2 
    bike  3  0 
    bird  4  0 
    car  0  2 
    cat  2  2 
    dog  3  4 
    fish  0  4 

set.seed(19) 
comparison.cloud(tm, scale=c(5, 1), random.order = FALSE, title.size = 1) 

从上面的代码的曲线图,运行set.seed(19),每个前我重新它的时候,在下面。

enter image description here

对于字体大小,如文档解释的,“每个字的大小被映射到它的最大偏差”。因此,“bird”在text1中是4,而在text2中是0,所以这是两个文本和最大字体之间最大的“偏差”; “鱼”也是4-0(但text2有4个实例,所以它的颜色是不同的),并且在同样大小的字体中,自行车是3-0,等等直到“猫”,没有偏差是最小的字体。

至于术语的“角度位置”,文件解密地解释说:“其角度位置由最大出现的文件确定。”该图似乎将中心线上的字母顺序排在最前面的最大偏差项,并用一个不太清晰的公式列出其他偏差项。

颜色由具有最多实例的文本确定,因此“狗”是3个text1和4个text2,因此text2为棕色。领带,如“猫”似乎被分配到第一个文本中有这个词,但我没有测试任何这种解释。

+0

读取从GitHub时,#颜色=#文档的源代码,被预定和固定: 颜色= brewer.pal(NcoI位(term.matrix), “深色2”) ..... 文本(X1 ,y1,words [i],cex = size [i],offset = 0,srt = rotWord * 90, col = colors [group [i]],...) #group [i]文本属于 MJJDeveloper – MJJ