library(wordcloud)
## Loading required package: RColorBrewer
library(shiny)
source("getFreqDir.R")
tf <- getFreqDir("univ")
head(tf)
## hiroshima kufs kyoto osaka1 osaka2 osaka3 tokyo waseda
## 000 0 0 0 0 0 0 0 2
## 1 0 0 0 1 0 0 0 1
## 10 0 0 1 0 0 0 0 1
## 100 0 0 0 0 1 0 0 0
## 11 2 0 0 0 0 0 0 0
## 12 1 0 0 0 0 0 0 0
実行結果
comparison.cloud(tf[,1:2])
comparison.cloud(tf[,c(4,6)],max.words=40)
colnames(tf)
comparison.cloud(tf[,c(F,F,T,F,F,T,T,F)],max.words=40)
head(brewer.pal.info[])
## maxcolors category colorblind
## BrBG 11 div TRUE
## PiYG 11 div TRUE
## PRGn 11 div TRUE
## PuOr 11 div TRUE
## RdBu 11 div TRUE
## RdGy 11 div FALSE
rownames(brewer.pal.info[])
## [1] "BrBG" "PiYG" "PRGn" "PuOr" "RdBu" "RdGy"
## [7] "RdYlBu" "RdYlGn" "Spectral" "Accent" "Dark2" "Paired"
## [13] "Pastel1" "Pastel2" "Set1" "Set2" "Set3" "Blues"
## [19] "BuGn" "BuPu" "GnBu" "Greens" "Greys" "Oranges"
## [25] "OrRd" "PuBu" "PuBuGn" "PuRd" "Purples" "RdPu"
## [31] "Reds" "YlGn" "YlGnBu" "YlOrBr" "YlOrRd"
binfo<-brewer.pal.info[]
palets <-rownames(binfo[binfo$maxcolors>10,])
tmpPalet = palets[1]
(maxNum=binfo[rownames(binfo)==tmpPalet,][1])
## maxcolors
## BrBG 11
wordcloud(rownames(tf),tf$waseda,
colors=brewer.pal(as.integer(maxNum),tmpPalet))
tmpPalet = palets[5]
wordcloud(rownames(tf),tf$waseda,
colors=brewer.pal(as.integer(maxNum),tmpPalet),min.freq=5)
alt text
alt text
\[Corr(x,y)= \frac{\sum (x_{i}-\overline{x}) (y_{i}-\overline{y})}{\sqrt{\sum (x_{i}-\overline{x})^2\sum (y_{i}-\overline{y})^2}} \]
tf <- getFreqDir("testData")
res <-cor(tf)
round(res,2)
## test1 test2 test3 test4
## test1 1.00 -0.29 -0.38 -0.35
## test2 -0.29 1.00 0.80 0.96
## test3 -0.38 0.80 1.00 0.94
## test4 -0.35 0.96 0.94 1.00
行と列を転置する
t(tf)
## a b c d e f g h
## test1 3 4 13 0 7 0 0 0
## test2 2 4 2 0 1 11 7 0
## test3 2 0 3 1 1 9 7 4
## test4 4 4 5 1 2 20 14 4
round(cor(t(tf)),2)
## a b c d e f g h
## a 1.00 0.52 0.40 0.30 0.33 0.42 0.43 0.30
## b 0.52 1.00 0.37 -0.58 0.41 0.08 0.00 -0.58
## c 0.40 0.37 1.00 -0.40 0.99 -0.66 -0.65 -0.40
## d 0.30 -0.58 -0.40 1.00 -0.50 0.63 0.71 1.00
## e 0.33 0.41 0.99 -0.50 1.00 -0.71 -0.71 -0.50
## f 0.42 0.08 -0.66 0.63 -0.71 1.00 1.00 0.63
## g 0.43 0.00 -0.65 0.71 -0.71 1.00 1.00 0.71
## h 0.30 -0.58 -0.40 1.00 -0.50 0.63 0.71 1.00
plot(tf[,1],tf[,2], type="n",xlab=colnames(tf)[1],ylab=colnames(tf)[2])
text(tf[,1],tf[,2],rownames(tf))
cor(tf[,1],tf[,2])
## [1] -0.2876135
mtext(paste("corr = " , round(cor(tf[,1],tf[,2]),2)), side=3)
tf <- getFreqDir("univ")
res <-cor(tf)
install.packages("proxy")
library(proxy)
##
## Attaching package: 'proxy'
## The following objects are masked from 'package:stats':
##
## as.dist, dist
## The following object is masked from 'package:base':
##
## as.matrix
行と列を転置する
corr <- simil(t(tf))
round(corr, 2)
## hiroshima kufs kyoto osaka1 osaka2 osaka3 tokyo
## kufs 0.63
## kyoto 0.71 0.80
## osaka1 0.67 0.62 0.75
## osaka2 0.67 0.71 0.82 0.84
## osaka3 0.65 0.76 0.87 0.80 0.89
## tokyo 0.60 0.74 0.81 0.71 0.80 0.84
## waseda 0.71 0.79 0.86 0.75 0.80 0.81 0.76
corr <- simil(t(tf), diag=T)
round(corr, 2)
## hiroshima kufs kyoto osaka1 osaka2 osaka3 tokyo waseda
## hiroshima NA
## kufs 0.63 NA
## kyoto 0.71 0.80 NA
## osaka1 0.67 0.62 0.75 NA
## osaka2 0.67 0.71 0.82 0.84 NA
## osaka3 0.65 0.76 0.87 0.80 0.89 NA
## tokyo 0.60 0.74 0.81 0.71 0.80 0.84 NA
## waseda 0.71 0.79 0.86 0.75 0.80 0.81 0.76 NA
\[Cos(x,y)= \frac{\sum x_{i} y_{i}}{\sqrt{\sum x_{i}^2\sum y_{i}^2}} \]
simil(t(tf), method="cosine")
## hiroshima kufs kyoto osaka1 osaka2 osaka3
## kufs 0.6526589
## kyoto 0.7279603 0.8104367
## osaka1 0.6841531 0.6458906 0.7676934
## osaka2 0.6885497 0.7264594 0.8327895 0.8434805
## osaka3 0.6645501 0.7703932 0.8757348 0.8060690 0.8955915
## tokyo 0.6187031 0.7488038 0.8125733 0.7176287 0.8041446 0.8419948
## waseda 0.7278519 0.8020611 0.8653391 0.7658753 0.8107266 0.8200624
## tokyo
## kufs
## kyoto
## osaka1
## osaka2
## osaka3
## tokyo
## waseda 0.7712384
tf <- getFreqDir("univ")
res <-simil(t(tf), method="cosine")
round(res,2)
## hiroshima kufs kyoto osaka1 osaka2 osaka3 tokyo
## kufs 0.65
## kyoto 0.73 0.81
## osaka1 0.68 0.65 0.77
## osaka2 0.69 0.73 0.83 0.84
## osaka3 0.66 0.77 0.88 0.81 0.90
## tokyo 0.62 0.75 0.81 0.72 0.80 0.84
## waseda 0.73 0.80 0.87 0.77 0.81 0.82 0.77
tf <- getFreqDir("univ")
hc <- hclust(dist(t(tf)))
plot(hc)
rect.hclust(hc, k=3, border="red")
tf <- getFreqDir("univ")
hc <- hclust(dist(t(tf), method = "canberra"), method = "ward.D")
plot(hc)
rect.hclust(hc, k=3, border="red")
ui画面には以下のinput機能を搭載
1. 距離行列計算法の選択:"euclidean", "canberra", "manhattan"
2. クラスター間距離計算法の選択:"average", "complete", "ward"
3. 樹形図内長方形の数:2-6