728x90
cor(x, y) : 상관관계 계산
cor(x, use=, method= )
[인수]
1) x : 행렬 또는 데이터프레임
2) use : 결측값(missing data)를 다루는 방법.
(1) all.obs : 결측값이 없다고 가정하는 경우로, 결측값이 존재하면 에러를 발생시킨다.
(2) complete.obs (listwise deletion) : 결측값을 사례별로 지우기. 결측값이 하나라도 있는 경우에 그 case 모두를 지운다.
(3) pairwise.complete.obs (pairwise deletion) : 한쌍 목록 삭제.
3) method : 상관관계의 유형 (pearson, spearman, kendall)
(1) pearson : X 와 Y 가 완전히 동일하면 +1, 전혀 다르면 0, 반대방향으로 완전히 동일하면 –1 의 값을 가짐
(2) spearman : 데이터가 서열척도인 경우 즉 자료의 값 대신 순위를 이용하는 경우의 상관계수로서, 데이터를 작은 것부터 차례로 순위를 매겨 서열 순서로 바꾼 뒤 순위를 이용해 상관계수를 구함
(3) kendall : 일련의 등위에 있어서 그 순서가 얼마나 일관성이 있는가에 초점을 맞춤
[예제]
> df <- structure(list(V1 = c(56, 123, 546, 26, 62, 6, NA, NA, NA, 15+ ), V2 = c(21, 231, 5, 5, 32, NA, 1, 231, 5, 200), V3 = c(NA,+ NA, 24, 51, 53, 231, NA, 153, 6, 700), V4 = c(2, 10, NA, 20,+ 56, 1, 1, 53, 40, 5000)), .Names = c("V1", "V2", "V3", "V4"), row.names = c(NA,+ 10L), class = "data.frame")> dfV1 V2 V3 V41 56 21 NA 22 123 231 NA 103 546 5 24 NA4 26 5 51 205 62 32 53 566 6 NA 231 17 NA 1 NA 18 NA 231 153 539 NA 5 6 4010 15 200 700 5000> cor(df, use="pairwise.complete.obs", method="pearson")V1 V2 V3 V4V1 1.0000000 -0.2902929 -0.4108040 -0.3753177V2 -0.2902929 1.0000000 0.6964304 0.4092076V3 -0.4108040 0.6964304 1.0000000 0.9471033V4 -0.3753177 0.4092076 0.9471033 1.0000000> cor(df, use="complete.obs", method="pearson")V1 V2 V3 V4V1 1.0000000 -0.5819416 -0.6791220 -0.6764676V2 -0.5819416 1.0000000 0.9921413 0.9925865V3 -0.6791220 0.9921413 1.0000000 0.9999935V4 -0.6764676 0.9925865 0.9999935 1.0000000
728x90
'프로그래밍 Programming' 카테고리의 다른 글
Data Preparation (10) - Clean (Remove the Variables) (0) | 2014.12.05 |
---|---|
lower.tri / upper.tri (0) | 2014.12.05 |
apply function (apply/lappy/sapply) (0) | 2014.12.02 |
Data Preparation (9) - Clean (Deal with Missing Values) (0) | 2014.11.29 |
Data Preparation (8) - Clean (Ignore MultiLevel, Constants) (0) | 2014.11.29 |