A: 데이터 프레임에서 그룹별로 텍스트를 축소하는 방법


다음 방법을 사용하여 R의 데이터 프레임에서 그룹별로 텍스트를 축소할 수 있습니다.

방법 1: Base R을 사용하여 그룹별로 텍스트 줄이기

 aggregate(text_var ~ group_var, data=df, FUN=paste, collapse='')

방법 2: dplyr을 사용하여 그룹별로 텍스트 줄이기

 library (dplyr)

df %>%
  group_by(group_var) %>%
  summarize(text=paste(text_var, collapse=''))

방법 3: data.table을 사용하여 그룹별로 텍스트 줄이기

 library (data.table)

dt <- as. data . table (df)

dt[, list(text_var=paste(text_var, collapse='')), by=group_var]

이 튜토리얼에서는 다음 데이터 프레임을 사용하여 실제로 각 방법을 사용하는 방법을 설명합니다.

 #create data frame
df <- data. frame (team=c('A', 'A', 'A', 'B', 'B', 'B'),
                 position=c('Guard', 'Guard', 'Forward',
                            'Guard', 'Forward', 'Center'))

#view data frame
df

  team position
1A Guard
2 A Guard
3 A Forward
4 B Guard
5B Forward
6B Center

예시 1: Base R을 사용하여 그룹별로 텍스트 줄이기

다음 코드는 R 데이터베이스의 Aggregate() 함수를 사용하여 열별로 그룹화된 위치 열의 텍스트를 줄이는 방법을 보여줍니다.

 #collapse position values by team 
aggregate(position ~ team, data=df, FUN=paste, collapse='')

  team position
1A GuardGuardForward
2 B GuardForwardCenter

위치 열의 각 텍스트 값은 열의 값별로 그룹화되어 단일 값으로 축소되었습니다.

예시 2: dplyr을 사용하여 그룹별로 텍스트 줄이기

다음 코드는 dplyr 패키지의 summarise() 함수를 사용하여 열별로 그룹화된 위치 열의 텍스트를 축소하는 방법을 보여줍니다.

 library (dplyr)

#collapse position values by team
df %>%
  group_by(group_var) %>%
  summarize(text=paste(text_var, collapse=''))

# A tibble: 2 x 2
  team text              
                
1A GuardGuardForward 
2 B GuardForwardCenter

위치 열의 각 텍스트 값은 열의 값별로 그룹화되어 단일 값으로 축소되었습니다.

예시 3: data.table을 사용하여 그룹별로 텍스트 줄이기

다음 코드는 data.table 패키지의 함수를 사용하여 Team 열별로 그룹화된 Position 열의 텍스트를 축소하는 방법을 보여줍니다.

 library (data.table)

#convert data frame to data table
dt <- as. data . table (df)

#collapse position values by team
dt[, list(text_var=paste(text_var, collapse='')), by=group_var]

   team position
1: A GuardGuardForward
2: B GuardForwardCenter

포지션 열의 각 텍스트 값은 열의 값별로 그룹화되어 단일 값으로 축소되었습니다.

추가 리소스

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

R에서 특정 문자열이 포함된 열을 선택하는 방법
R의 문자열에서 문자를 제거하는 방법
R의 문자열에서 문자 위치를 찾는 방법

의견을 추가하다

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