약물 이름 (DN)과 이에 해당하는 이상 반응 (AE)이라는 두 가지 변수가 있는데, 이는 다 대다 관계에 있습니다. 33,556 개의 약물 이름과 9,516 개의 부작용이 있습니다. 표본 크기는 약 580 만 개의 관측치입니다.
DN과 AE의 연관성 / 관계를 연구하고 이해하고 싶습니다. 그림을 보는 것이 더 낫기 때문에 R 에서이 세트를 시각화하는 방법에 대해 생각하고 있습니다. 어떻게해야할지 모르겠습니다 ...
약물 이름 (DN)과 이에 해당하는 이상 반응 (AE)이라는 두 가지 변수가 있는데, 이는 다 대다 관계에 있습니다. 33,556 개의 약물 이름과 9,516 개의 부작용이 있습니다. 표본 크기는 약 580 만 개의 관측치입니다.
DN과 AE의 연관성 / 관계를 연구하고 이해하고 싶습니다. 그림을 보는 것이 더 낫기 때문에 R 에서이 세트를 시각화하는 방법에 대해 생각하고 있습니다. 어떻게해야할지 모르겠습니다 ...
답변:
여기서는 vcd의 잔차 음영 아이디어를 희소 행렬 시각화와 함께 사용하여 예를 들어이 책의 49 페이지에 있습니다. 잔여 음영으로 후자의 줄거리를 상상해보십시오.
희소 행렬 / 연속성 표에는 일반적으로 각 부작용과 함께 각 약물의 발생 횟수가 포함됩니다. 그러나 잔류 쉐이딩 아이디어를 사용하면 기본 로그 선형 모델 (예 : 독립 모델 또는 원하는 다른 것)을 설정하고 색상 구성표를 사용하여 모델이 예측하는 것보다 더 자주 / 낮은 빈도로 발생하는 약물 / 효과 조합을 찾을 수 있습니다 . 관측치가 많으므로 매우 미세한 색상 임계 값을 사용하고 클러스터 분석의 마이크로 어레이가 종종 시각화되는 방식과 유사한 맵을 얻을 수 있습니다.(그러나 아마도 더 강한 색상 "그라데이션"). 또는 예측에 대한 관측치의 차이가 색상보다 임계 값을 초과하고 나머지는 흰색으로 유지되도록 임계 값을 작성할 수 있습니다. 이 작업을 정확히 수행하는 방법 (예 : 사용할 모델 또는 임계 값)은 질문에 따라 다릅니다.
편집 여기에 내가하는 방법이 있습니다 (사용 가능한 RAM이 충분하다면 ...)
그런 다음 이런 식으로 끝납니다 (물론 그림이 훨씬 커지고 픽셀 크기가 훨씬 작아 지지만 아이디어를 얻어야합니다.) 색상을 영리하게 사용하면 연관성 / 출발을 독립적으로 시각화 할 수 있습니다. 관심이 있음).
100x100 매트릭스를 사용한 빠르고 더러운 예입니다. 이것은 범례에서 볼 수 있듯이 잔차가 -10에서 10 사이의 장난감 예제입니다. 흰색은 0이고 파란색은 예상보다 덜 자주, 빨간색은 예상보다 더 자주입니다. 아이디어를 얻을 수 있어야합니다. 편집 : 줄거리 설정을 수정하고 비폭력 색상을 사용했습니다.
이 image
기능과 cm.colors()
다음 기능을 사용하여 수행되었습니다 .
ImagePlot <- function(x, ...){
min <- min(x)
max <- max(x)
layout(matrix(data=c(1,2), nrow=1, ncol=2), widths=c(1,7), heights=c(1,1))
ColorLevels <- cm.colors(255)
# Color Scale
par(mar = c(1,2.2,1,1))
image(1, seq(min,max,length=255),
matrix(data=seq(min,max,length=255), ncol=length(ColorLevels),nrow=1),
col=ColorLevels,
xlab="",ylab="",
xaxt="n")
# Data Map
par(mar = c(0.5,1,1,1))
image(1:dim(x)[1], 1:dim(x)[2], t(x), col=ColorLevels, xlab="",
ylab="", axes=FALSE, zlim=c(min,max))
layout(1)
}
#100x100 example
x <- c(seq(-10,10,length=255),rep(0,600))
mat <- matrix(sample(x,10000,replace=TRUE),nrow=100,ncol=100)
ImagePlot(mat)
http://www.phaget4.org/R/image_matrix.html 에서 아이디어를 사용 하십시오 . 행렬이 너무 커서 image
함수가 느려질 경우 useRaster=TRUE
인수를 사용하십시오. 스파 스 매트릭스 객체를 사용할 수도 있습니다. image
위의 코드를 사용하려면 방법 이 있어야 합니다. sparseM 패키지를 참조하십시오.
이렇게하면 행 / 열의 영리한 순서가 편리 해져 arules 패키지로 계산할 수 있습니다 (17 페이지 및 18 페이지 확인). 일반적으로 이러한 유형의 데이터 및 문제에 대한 arules 유틸리티를 권장합니다 (시각화뿐만 아니라 패턴 찾기). 또한 잔여 음영 대신 사용할 수있는 레벨 사이의 연관 측정 값을 찾을 수 있습니다.
또한보고 할 수 있습니다 tableplots 나중에에만 부작용의 몇 가지를 조사 할의.