R에서 상관계수를 계산하기 위해 cor()를 사용하는 방법


R의 cor() 함수를 사용하여 변수 간의 상관 계수를 계산할 수 있습니다.

이 기능을 사용하는 가장 일반적인 방법은 다음과 같습니다.

방법 1: 두 변수 간의 Pearson 상관 계수 계산

 cor(df$x, df$y)

두 연속형 변수 간의 상관관계를 계산할 때 Pearson 상관계수를 사용합니다. (예: 키와 몸무게)

방법 2: 데이터 프레임의 모든 숫자 변수 간의 Pearson 상관 계수를 계산합니다.

 cor(df)

이 방법은 데이터 프레임에 있는 숫자 변수의 각 쌍별 조합 간의 피어슨 상관 계수를 포함하는 상관 행렬을 반환합니다.

방법 3: 두 변수 간의 Spearman 상관 계수 계산

 cor(df$x, df$y, method=' spearman ')

두 순위 변수 간의 상관 관계를 계산할 때 Spearman의 상관 계수를 사용합니다. (예: 학생의 수학 시험 점수 순위와 수업 내 과학 시험 점수 순위)

방법 4: 두 변수 간의 Kendall 상관 계수 계산

 cor(df$x, df$y, method=' kendall ')

Spearman의 상관관계를 사용하고 싶지만 표본 크기가 작고 동률이 많은 경우 Kendall의 상관계수를 사용하십시오.

다음 예에서는 8명의 학생에 대한 공부에 소비한 시간, 치른 연습 시험 횟수 및 최종 시험 성적을 보여주는 R의 다음 데이터 프레임을 사용하여 실제로 각 방법을 사용하는 방법을 보여줍니다.

 #create data frame
df <- data. frame (hours=c(1, 1, 3, 2, 4, 3, 5, 6),
                 prac_exams=c(4, 3, 3, 2, 3, 2, 1, 4),
                 score=c(69, 74, 74, 70, 89, 85, 99, 90))

#view data frame
df

  hours prac_exams score
1 1 4 69
2 1 3 74
3 3 3 74
4 2 2 70
5 4 3 89
6 3 2 85
7 5 1 99
8 6 4 90

예 1: 두 변수 간의 Pearson 상관 계수 계산

다음 코드는 cor() 함수를 사용하여 시간점수 변수 간의 Pearson 상관 계수를 계산하는 방법을 보여줍니다.

 #calculate Pearson correlation coefficient between hours and score
cor(df$hours, df$score)

[1] 0.8600528

근무시간점수 사이의 피어슨 상관계수는 0.86인 것으로 나타났습니다.

데이터 프레임에 NA 값이 있는 경우 use=’complete.obs’ 인수를 사용하여 NA 값이 없는 행만 사용할 수 있습니다.

 #calculate Pearson correlation coefficient and ignore any rows with NA
cor(df$hours, df$score, use=' complete.obs ')

예 2: 모든 수치 변수 간의 Pearson 상관 계수 계산

다음 코드는 cor() 함수를 사용하여 데이터 프레임의 모든 숫자 변수 간의 Pearson 상관 계수가 포함된 상관 행렬을 만드는 방법을 보여줍니다.

 #calculate Pearson correlation coefficient between all numeric variables
cor(df)

                hours prac_exams score
hours 1.0000000 -0.1336063 0.8600528
prac_exams -0.1336063 1.0000000 -0.3951028
score 0.8600528 -0.3951028 1.0000000

결과를 해석하는 방법은 다음과 같습니다.

  • 시간prac_exams 간의 피어슨 상관 계수는 -0.13 입니다.
  • 근무 시간점수 사이의 Pearson 상관 계수는 0.86 입니다.
  • prac_exams점수 사이의 피어슨 상관 계수는 -0.39 입니다.

참고 : 각 개별 변수와 그 자체 사이의 피어슨 상관 계수는 항상 1이므로 상관 행렬의 대각선을 따라 각 값이 1입니다.

예 3: 두 변수 간의 Spearman 상관 계수 계산

다음 코드는 cor() 함수를 사용하여 hourprac_exams 변수 사이의 Spearman 상관 계수를 계산하는 방법을 보여줍니다.

 #calculate Spearman correlation coefficient between hours and prac_exams
cor(df$hours, df$prac_exams, method=' spearman ')

[1] -0.1250391

시간prac_exams 간의 Spearman 상관 계수는 -0.125로 나타났습니다.

예 4: 두 변수 간의 Kendall 상관 계수 계산

다음 코드는 cor() 함수를 사용하여 hourprac_exams 변수 사이의 Kendall 상관 계수를 계산하는 방법을 보여줍니다.

 #calculate Kendall's correlation coefficient between hours and prac_exams
cor(df$hours, df$prac_exams, method=' kendall ')

[1] -0.1226791

시간prac_exams 사이의 Kendall의 상관 계수는 -0.123으로 나타났습니다.

추가 리소스

다음 튜토리얼에서는 R에서 다른 일반적인 작업을 수행하는 방법을 설명합니다.

R에서 슬라이딩 상관관계를 계산하는 방법
R에서 자기상관을 계산하는 방법
R에서 부분 상관 관계를 계산하는 방법

의견을 추가하다

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다