2013-11-26 2 views
0

Я новичок в R, и мне было интересно, могу ли я смочить карту таблицы или матрицы, которые содержат TRUE и FALSE, то есть: Условие1 Условия2. , , Id1 TRUE FALSE Id2 FALSE TRUE . . . Мое оправдание этому наивному вопросу и любому предложению можно сделать плакат или любой инструмент для визуализации моей таблицы или матрицы по цветовому коду и применить на ней кластеризацию или дендрограмму.
Спасибо заранееHeatmap a chacrter matrix

+0

Я нашел подобный вопрос [ЗДЕСЬ ] (http://stackoverflow.com/questions/3280705/how-to-convert-2d-binary-matrix-to-black-white-plot) – Stu

ответ

1

Используйте функцию изображения():

> x=matrix(c(T,F,T,F,F,F,T,T,F,T,T,T,F,F,F,T),ncol=4) 
> x 
     [,1] [,2] [,3] [,4] 
[1,] TRUE FALSE FALSE FALSE 
[2,] FALSE FALSE TRUE FALSE 
[3,] TRUE TRUE TRUE FALSE 
[4,] FALSE TRUE TRUE TRUE 
> image(t(x),axes=F) 
> axis(2,at=seq(0,1,(1/(nrow(x)-1))),labels=nrow(x):1) 
> axis(3,at=seq(0,1,(1/(ncol(x)-1))),labels=1:ncol(x)) 

Дайте ему шанс!

+1

+1! Разве это не должно быть 'image (t (x) [, ncol (x): 1])'? Эти квадраты дают мне головную боль! –

1

Предполагая, что вы можете легко конвертировать TRUE/FALSE до 1,0 числового

x<-data.frame(y=sample(c(1, 0),10, replace=TRUE), z=sample(c(1, 0),10, replace=TRUE)) 
heatmap(as.matrix(x)) 

, если это необходимо, чтобы изменить значение TRUE/FALSE 1/0,

x[x==TRUE]<-1 
x[x==FALSE]<-0 
+0

На самом деле вам не нужно поворачивать T в 1 или F на 0. Это будет сделано автоматически. – Stu

+2

Хмм, я получаю следующую ошибку 'Ошибка в heatmap (as.matrix (x)): 'x' должна быть числовой матрицей' без преобразования, может быть для' image' в порядке, но не для 'heatmap' – Ananta

+0

yea you правы, спасибо – Stu