2014-10-21 3 views
1

현재 R을 사용하여 데이터 세트에서 작업하고 있습니다. 필자는 내 변수에 대해 상관 관계 martix (Pearson)를 만들었지 만, 이제 matrix에 표시된 값에 대한 임계 값을 설정하려고합니다.상관 행렬에 임계 값 적용 R

   200605_s_at  202592_at  202958_at 
200605_s_at 1.000000000  NA    NA 
202592_at 0.695065389  1.000000000  NA 
202958_at 0.869772244  NA   1.000000000 
: (i가 임계 값 0.6을 넣을 때)

   200605_s_at  202592_at  202958_at 
200605_s_at 1.000000000  0.295065389  0.169772244 
202592_at 0.695065389  1.000000000  -0.534394180 
202958_at 0.869772244  -0.534394180 1.000000000 

나는 다음과 같은 출력을 찾으려면 : 나는 다음과 같은 출력을 얻을

cor_relation = cor(mydata_frame, use="all.obs", method="pearson") 

: 다음 코드를 시도하고있다

미리 도움을 청하십시오!

답변

4

대체 :

cor_relation[abs(cor_relation) < 0.6] <- NA 
+0

고마워, 그것은 완벽하게 작동했다. 그러나 나는 "abs"를 제거해야했다. 그렇지 않으면 나는 단지 긍정적인 것을 필요로 할 때뿐만 아니라 음의 값을 보이고 있었다. – jessy

5
is.na(cor_relation) <- abs(cor_relation) < 0.6 

은 모든 계수를 0.6 미만의 절대 값으로 바꾸고 NA으로 바꿉니다.

+0

+1, 대체 양식을했다 is.na' 어떤 아이디어'... 내부적으로이 작업을 수행하는 방법을 – BrodieG

+0

? 나는 R이 참조로 물건을 수정할 수 없다고 생각했다 ... – Alex

+1

@Alex 물건은 제자리에서 수정되지 않았지만 두 번 복사되었다. 'tracemem (cor_relation)'을 시도하고 위의 명령을 실행하십시오. –