R에서 동일한 열 값을 가진 행을 결합하는 방법


다음 기본 구문을 사용하여 R의 데이터 프레임에서 동일한 열 값을 가진 행을 결합할 수 있습니다.

 library (dplyr)

df %>%
  group_by(group_var1, group_var2) %>%
  summarise(across(c(values_var1, values_var2), sum))

다음 예에서는 실제로 이 구문을 사용하는 방법을 보여줍니다.

예: R에서 동일한 열 값을 가진 행 결합

회사의 다양한 직원이 작성한 판매 및 반품에 대한 정보가 포함된 다음 데이터 프레임이 있다고 가정합니다.

 #create data frame
df <- data. frame (id=c(101, 101, 102, 103, 103, 103),
                 employee=c('Dan', 'Dan', 'Rick', 'Ken', 'Ken', 'Ken'),
                 sales=c(4, 1, 3, 2, 5, 3),
                 returns=c(1, 2, 2, 1, 3, 2))

#view data frame
df

   id employee sales returns
1 101 Dan 4 1
2 101 Dan 1 2
3 102 Rick 3 2
4 103 Ken 2 1
5 103 Ken 5 3
6 103 Ken 3 2

다음 구문을 사용하여 idEmployee 열에서 동일한 값을 가진 행을 결합한 다음 나머지 열을 집계할 수 있습니다.

 library (dplyr)

#combine rows with same value for id and employee and aggregate remaining columns
df %>%
  group_by(id, employee) %>%
  summarise(across(c(sales, returns), sum))

# A tibble: 3 x 4
#Groups: id[3]
     id employee sales returns
          
1 101 Dan 5 3
2 102 Rick 3 2
3 103 Ken 10 6

결과는 IDEmployee 열의 값이 동일한 원본 데이터 프레임의 모든 행을 결합한 다음 SalesReturns 열의 값 합계를 계산하는 데이터 프레임입니다.

참고 : 합계 함수를 사용하여 판매 및 반품 열을 집계하도록 선택했지만 원하는 경우 평균 과 같은 다른 측정항목을 기준으로 집계할 수도 있습니다.

관련 항목: dplyr에서 across() 함수를 사용하는 방법

추가 리소스

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

R에서 목록을 결합하는 방법
R에서 두 벡터를 결합하는 방법
R의 두 데이터 프레임을 서로 다른 열과 결합하는 방법

의견을 추가하다

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