2017-09-21 12 views
1

이의 내가 간단한 데이터 프레임을 가정 해 봅시다 :이름 바꾸기 열

df <- data.frame("one"= c(1:5), "two" = c(6:10), "three" =c(7:11)) 
나는 그들이 내 기준은 다음을하자 기준을 일치하도록, 내 열 이름을 이름을 변경하고자 싶습니다

:

df2 <- data.frame("Name" = c("A", "B", "C"), "Oldname" = c("one", "two", "three")) 

그들이 무슨 일이 일치하는 경우 어떻게, DF2에서 사람들과 안양에서 내 열 이름을 대체 할 수있는 (그래서 열 이름 안양에서은 다음과 같습니다, 비씨)을?

내 원본 데이터에서 df2는 크기가 더 크고 여러 데이터 세트가 있으므로 df가 있으므로 작업 할 수있는 코드는 최대한 일반화되어야합니다. 미리 감사드립니다!

답변

1

우리는 이전의 것들에 새로운 이름을 매핑하려면 여기를 match 기능을 사용할 수 있습니다 :

names(df) <- df2$Name[match(names(df), df2$Oldname)] 
names(df) 
[1] "A" "B" "C" 

Demo