많은 변수에 대한 산점도 행렬 탐색


10

많은 매개 변수 (예 : 50-200)로 데이터 세트를 분석하고 변수 사이의 관계를 보는 데 관심이 있습니다 (예 : 2 변수 스 캐터 플롯 또는 2 차원 막대 그래프). 그러나이 수의 매개 변수의 경우 200x200 배열의 플롯을 그릴 수 없습니다 (인쇄하고 벽에 매달 지 않는 한).

반면, 상관 행렬 만 수행해도 2 변수 관계에 대한 모든 정보가 제공되지는 않습니다.

많은 변수에 대한 2 변수 관계를 탐색 할 수있는 방법 (라이브러리 또는 워크 플로우)이 있습니까?

특히 다른 사람에게 결과를 표시하는 데 관심이 있습니다 (어쩌면 일부 데이터 전처리 후). 예를 들어 JavaScript에서 대화 형으로 상관 관계 매트릭스에서 선택한 필드에 대한 산점도 행렬을 볼 수있었습니다.

산점도 행렬은 다음과 같은 것을 의미합니다.

여기에 이미지 설명을 입력하십시오

( pandasplotting 블로그 에서 가져온 ; Python / Pandas , R , D3.js 등에서 사용 가능).


4
당신은 당신이 무엇을하고 있는지 명확하게 밝히지 않았습니다. 모든 데이터 포인트에서 클라우드를보고 싶습니까? 모든 이변 량 패싯 을 한 번에보고 싶습니까?
ttnphns

@ttnphns 모든 데이터 포인트를 보거나 집계 된 형태 (예 : 2d 히스토그램) 로보 고 싶습니다. 모든 것이 한 번인 것을 볼 필요는 없습니다 (<15 변수에는 의미가 있지만 200은 아님). 그리고 예, 나는 그 질문이 약간 개방적이라는 것을 알고 있습니다. 근접 버전은 "상관 매트릭스에서 각 픽셀에 마우스를 갖다 대면 산포도와 히스토그램을 표시하는 JS 라이브러리가 있습니까? 아니면 하나를 써야합니까?") 문제를 해결하기위한 더 나은 워크 플로우.
Piotr Migdal

산점도 행렬을 olap 큐브 형식으로 구성 할 수 있으므로 한 번에 하나 또는 여러 개의 플롯 만 표시하고 그 사이를 전환 할 수 있습니다. 불행히도, 그래픽 olap 큐브를 수행하는 특정 프로그램이나 코드를 모른다.
ttnphns

답변:


7

변수 사이의 관계를 탐색하는 것은 매우 모호하지만, 이와 같이 산점도를 검사하는 더 일반적인 두 가지 목표는 다음과 같습니다.

  • 기본 잠재 그룹 (변수 또는 사례)을 식별하십시오.
  • 특이 값 (단 변량, 이변 량 또는 다변량 공간)을 식별합니다.

둘 다 데이터를보다 관리하기 쉬운 요약으로 줄이지 만 목표는 다릅니다. 잠재 그룹을 식별하면 일반적으로 데이터의 차원이 감소하고 (예 : PCA를 통해)이 축소 된 공간에서 변수 또는 사례가 함께 모여 있는지 여부를 탐색합니다. 예를 들어, Friendly (2002) 또는 Cook et al. (1995).

특이 치를 식별한다는 것은 모형을 적합시키고 모형과의 편차를 플로팅 (예 : 회귀 모형의 잔차를 플로팅)하거나 데이터를 주요 구성 요소로 줄이고 모델이나 데이터 본문에서 벗어난 강조점 만 의미 할 수 있습니다. 예를 들어 1 차원 또는 2 차원의 상자 그림은 일반적으로 힌지 외부의 개별 점만 표시합니다 (Wickham & Stryjewski, 2013). 플로팅 잔차는 플롯을 평탄화해야한다는 좋은 특성을 가지고 있으므로 (Tukey, 1977) 나머지 점 구름의 관계에 대한 증거는 "흥미로운"것입니다. 이력서에 관한이 질문 에는 다변량 특이 치를 식별하는 훌륭한 제안이 있습니다.

이러한 대규모 SPLOMS를 탐색하는 일반적인 방법은 모든 개별 점 을 도표화하지 않고 단순화 된 요약 유형과이 요약에서 크게 벗어난 점, 예를 들어 신뢰 타원, 산포 요약 (Wilkinson & Wills, 2008), 이변 량 상자 그림, 등고선 그림. 아래는 공분산을 정의하고 선형 연관을 설명하기 위해 황토를 더 부드럽게 중첩시키는 타원을 그리는 예입니다.

그램 타원
(출처 : statmethods.net )

어느 쪽이든, 너무 많은 변수를 가진 실질적이고 성공적인 대화식 그림은 지능적인 정렬 (Wilkinson, 2005)과 변수를 걸러내는 간단한 방법 (브러싱 / 링크 기능)이 필요할 것입니다. 또한 실제 데이터 세트에는 축을 변환하는 기능이 있어야합니다 (예 : 데이터를 로그 스케일로 플로팅하고 근을 취하여 데이터를 변환하는 등). 행운을 빕니다. 단 하나의 음모 만 고집하지 마십시오!


인용


1
감사! 변수는 비선형 방식으로 관련되어 있고 크기 조정 (또는 다른 처리)이 필요할 수 있으므로 PCA를 실행 하기 전에 데이터를 탐색하는 것이 목표입니다 .
Piotr Migdal

corrgram ellipse + loess smoother 예제는 여전히 적절해야하며 (또는 이변 량 boxplot과 같은 다른 측정 다각형으로 covar. ellipse를 변경해야 함) ID 비선형 연관을 도울 수 있습니다. PCA (또는 이와 유사한 것)를 통한 데이터 축소 후 비선형 연관을 식별 할 수 있는지 여부에 대한 후속 조치가 좋은 질문 일 수 있습니다.
Andy W

1

pairsD3 R 패키지 의 반짝이는 인터페이스를 사용하여 산점도 행렬과 상호 작용하는 방법을 고려할 수 있습니다.

홍채 데이터 세트의 예 :

install.packages("pairsD3")
require("pairsD3")
shinypairs(iris)

출처 : https://github.com/garthtarr/pairsD3

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.