2016-06-13 7 views
3

Я хочу создать облако тегов для визуализации частоты генов.Сохранить в верхнем регистре в tagcloud

library(wordcloud) 

genes_snv <- read.csv("genes.txt", sep="", header=FALSE) 

wordcloud(genes_snv$V1, 
      min.freq=15, 
      scale=c(5,0.5), 
      max.words=100, 
      random.order=FALSE, 
      rot.per=0.3, 
      colors=brewer.pal(8, "Dark2")) 

Это мой код, но он преобразует все в строчные буквы (не полезно с именами генов). Как я могу избежать этого?

genes.txt начинается с

Fcrl5 
Etv3 
Etv3 
Lrrc71 
Lrrc71 
(...) 
+0

Сделать genes_snv $ V1 в вектор (ген <- genes_snv $ V1) и просто попробовать, я думаю, что это работает –

+0

Спасибо за ваш ответ, к сожалению, все тот же (строчный) wordcloud. – maxie

ответ

2

freq Когда аргумент отсутствует wordcloud вызовы tm::TermDocumentMatrix, которые я думаю, внутренне вызывает функцию tolower до вычисления частоты.

Чтобы избежать вызовов tm мы можем поставить нашу собственную частоту, смотрите пример:

# dummy data 
set.seed(1) 
genes <- c("Fcrl5","Etv3","Etv3","Lrrc71","Lrrc71") 
genes <- unlist(sapply(genes, function(i)rep(i, sample(1:100,1)))) 

# get frequency 
plotDat <- as.data.frame(table(genes)) 

# plot 
wordcloud(word = plotDat$genes, freq = plotDat$Freq, 
      min.freq=15, 
      scale=c(5,0.5), 
      max.words=100, 
      random.order=FALSE, 
      rot.per=0.3, 
      colors=brewer.pal(8, "Dark2")) 

enter image description here

 Смежные вопросы

  • Нет связанных вопросов^_^