2017-11-29 19 views
1

여러 dplyr :: 조인 후 테이블에 여러 개의 중복 된 열이 있습니다. 테이블의 간단한 버전은 다음과 같습니다R 정규식이있는 열 이름 바꾸기

col1 col2 col3 col4.x col4.y col5.x col5.y 

난에 이름을 얻으려면 :

col1 col2 col3 col4 col5 

나는 select(tablename, -matches("*.y"))

이 결과로 * .Y 열을 제거 할 수 있었다 :

col1 col2 col3 col4.x col5.x 

여기에서 rename_if()이 작동해야한다고 생각합니다. ,하지만 col4.x 및 col5.x를 col4 및 col5로 이름을 바꾸는 방법에 관해서는 손해를보고 있습니다.

모든 조언을 주시면 감사하겠습니다.

+0

'setNames (TABLENAME, GSUB ("\\. X의 $", "", 이름 (TABLENAME)))'당신은 또한 검토해야 – useR

+0

은'당신'join' 함수에서 매개 변수 by'. 이것은 .x와 .y를 얻는 이유입니다. 또는 두 개의 데이터 프레임 중 하나에서'select (-col5)'를 사용하여 복제본을 제거 할 수 있습니다. – Kamil

답변

1

mytibble %>% rename_all(gsub, pattern = '\\.x', replacement = '')