2016-11-09 3 views
0

입니다. 내 데이터 세트의 모든 날짜 2006-04-11을 2006-04-01로 변경하고 싶습니다. date 변수를 2006-04-11로 recoded 된 요소로 변환하고 class = date로 변수를 다시 변환했습니다.recode 특정 날짜는 R

변수가 인수 일 때 recode가 작동하지만 (2006-04-11 날짜는 모두 2006-04-01로 변경됨) 다시 class = date로 변환하면 변수는 다시 2006-04-11로 나타납니다. 11.

날짜 변수를 인수로 변환하고 제대로 작동하는지 확인하십시오.

data$review_date<-as.factor(data$review_date) 
class(data$review_date) 

원하는 날짜 (2006-04-01) 및 데이터보기로 변수를 재 코딩하십시오. 요소에서 다시 최신

recode_factor(data$review_date, '2006-04-11' = "2006-04-01") 
data$review_date 

변환 변수는 클래스를 확인하고 데이터보기.

data$review_date <- as_date(data$review_date,"%y/%m/%d") 
class(review_date) 
str(data) 
data$review_date 

다른 방법으로는 모든 날짜의 일부를 완전히 삭제할 수 있지만이를 수행하는 방법을 찾지 못했습니다.

+0

- 년/월 날짜를 저장하는'zoo' 패키지에서'yearmon' 참조 사물. – thelatemail

답변

2

recode_factor()data의 값을 업데이트하지 않습니다. 다음과 같이 결과를 다시 할당해야합니다.

data$review_date <- recode_factor(data$review_date, '2006-04-11' = "2006-04-01") 

... 그래서 원래 값을 덮어 쓸 수 있습니다.

전체 프로세스는 단순한 교체 작업 일 수도 있습니다. 예 :

data <- data.frame(review_date = as.Date(c("2006-04-11","2001-01-01"))) 
data$review_date[data$review_date == "2006-04-11"] <- "2006-04-01" 

가 (예, 이것은 적절한 Date 클래스 변수를 줄 것이다) 모두 일을 포기에 대한 마지막 줄에 관해서는

+0

데이터를 $ review <- 내 문제를 해결했습니다. 감사합니다! – nusbaume