A: 여러 모델에 grepl을 사용하는 방법


R의 grepl() 함수와 함께 다음 기본 구문을 사용하여 특정 열의 여러 문자열 패턴 중 하나를 포함하는 데이터 프레임의 행을 필터링할 수 있습니다.

 library (dplyr)

new_df <- filter(df, grepl(paste(my_patterns, collapse=' | '), my_column))

이 특정 구문은 my_column 이라는 열의 값에 my_patterns 라는 벡터의 문자열 패턴 중 하나가 포함된 행에 대한 데이터 프레임을 필터링합니다.

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

예: R에서 여러 모델에 grepl()을 사용하는 방법

다양한 농구팀에 대한 정보를 포함하는 다음과 같은 데이터 프레임이 R에 있다고 가정합니다.

 #create data frame
df <- data. frame (team=c('Mavs', 'Hawks', 'Nets', 'Heat', 'Cavs'),
                 points=c(104, 115, 124, 120, 112),
                 status=c('Bad', 'Good', 'Excellent', 'Great', 'Bad'))

#view data frame
df

   team points status
1 Mavs 104 Bad
2 Hawks 115 Good
3 Nets 124 Excellent
4 Heat 120 Great
5 Cavs 112 Bad

상태 열 문자열에 다음 문자열 패턴 중 하나가 포함된 행만 포함하도록 데이터 프레임을 필터링한다고 가정합니다.

  • ‘좋은’
  • ‘회색’
  • ‘전’

이를 수행하려면 grepl() 함수와 함께 다음 구문을 사용할 수 있습니다.

 library (dplyr)

#define patterns to search for
my_patterns <- c(' Good ', ' Gre ', ' Ex ')

#filter for rows where status column contains one of several strings
new_df <- filter(df, grepl(paste(my_patterns, collapse=' | '), status))

#view results
new_df

   team points status
1 Hawks 115 Good
2 Nets 124 Excellent
3 Heat 120 Great

상태 열의 문자열에 우리가 지정한 세 가지 패턴 중 하나가 포함된 행만 포함하도록 데이터 프레임이 필터링되었습니다.

Collapses=’|’ 인수와 함께 Paste() 함수를 사용하는 것에 주의하세요. 실제로 상태 열에서 “Good|Gre|Ex” 문자열을 찾았습니다.

이후 | R의 기호는 “OR”을 의미합니다. 상태 열에서 “Good” 또는 Gre” 또는 “Ex”가 포함된 행을 찾을 수 있었습니다.

추가 리소스

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

dplyr을 사용하여 열에 문자열이 포함된 경우 변수를 변경하는 방법
dplyr을 사용하여 문자열에서 첫 번째 문자를 제거하는 방법
dplyr을 사용하여 열의 문자열을 바꾸는 방법

의견을 추가하다

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