Dplyr에서 문자열로 시작하지 않는 열을 선택하는 방법
R의 dplyr 패키지에서 다음 함수를 사용하여 특정 문자열로 시작하지 않는 열을 선택할 수 있습니다.
방법 1: 특정 문자열로 시작하지 않는 열 선택
df %>%
select(-starts_with(" string1 "))
방법 2: 여러 문자열 중 하나로 시작하지 않는 열 선택
df %>%
select(-starts_with(c(" string1 ", " string2 ", " string3 ")))
다음 예는 R의 다음 데이터 프레임에서 실제로 이러한 각 방법을 사용하는 방법을 보여줍니다.
#create data frame df <- data. frame (store1_sales=c(12, 10, 14, 19, 22, 25, 29), store1_returns=c(3, 3, 2, 4, 3, 2, 1), store2_sales=c(8, 8, 12, 14, 15, 13, 12), store2_returns=c(1, 2, 2, 1, 2, 1, 3), promotions=c(0, 1, 1, 1, 0, 0, 1)) #view data frame df store1_sales store1_returns store2_sales store2_returns promotions 1 12 3 8 1 0 2 10 3 8 2 1 3 14 2 12 2 1 4 19 4 14 1 1 5 22 3 15 2 0 6 25 2 13 1 0 7 29 1 12 3 1
예 1: 특정 문자열로 시작하지 않는 열 선택
다음 코드는 -starts_with() 함수를 사용하여 데이터 프레임에서 “store1″로 시작하지 않는 열만 선택하는 방법을 보여줍니다.
library (dplyr)
#select all columns that do not start with "store1"
df %>%
select(-starts_with(" store1 "))
store2_sales store2_returns promotions
1 8 1 0
2 8 2 1
3 12 2 1
4 14 1 1
5 15 2 0
6 13 1 0
7 12 3 1
“store1″로 시작하는 두 열은 반환되지 않습니다.
예 2: 여러 문자열 중 하나로 시작하지 않는 열 선택
다음 코드는 -starts_with() 함수를 사용하여 데이터 프레임에서 “store1” 또는 “prom”으로 시작하지 않는 열만 선택하는 방법을 보여줍니다.
library (dplyr)
#select all columns that do not start with "store1" or "prom"
df %>%
select(-starts_with(c(" store1 ", " prom ")))
store2_sales store2_returns
1 8 1
2 8 2
3 12 2
4 14 1
5 15 2
6 13 1
7 12 3
“store1” 또는 “prom”으로 시작하는 열은 반환되지 않습니다.
참고 : 기본적으로 start_with() 함수는 대소문자를 구분하지 않습니다. 함수의 대소문자를 구분하려면 함수에서 ignore.case=FALSE 인수를 사용하십시오.
추가 리소스
다음 튜토리얼에서는 dplyr을 사용하여 다른 일반적인 작업을 수행하는 방법을 설명합니다.
dplyr을 사용하여 이름으로 열을 선택하는 방법
dplyr을 사용하여 인덱스로 열을 선택하는 방법
dplyr에서 여러 조건으로 select_if를 사용하는 방법