2016-08-24 4 views
1

내 CSV 파일을 데이터 프레임으로 가져오고 싶지만 CSV 파일의 날짜가 비표준 형식입니다.read.csv2 날짜 형식 : R

첫 번째 열의 날짜 형식은 다음과 같습니다 내 read.csv2 기능의 인수

2016년 9월 8일

하나는 내가 아니라이 열을 지정할 때 클래스를 지정하는 것입니다 날짜 내가 실행시 다음과 같은 오류가 나타납니다 나는 그것이 날짜 클래스 요소 클래스에서 날짜를 변환 좋아하지 않는 추측하고있어

Error in charToDate(x) : 
    character string is not in a standard unambiguous format 

.

필자는 POSIXlt에 대해 약간 읽었지만 기능에 대한 자세한 내용은 알지 못합니다.

어떤 아이디어를 요소에서 날짜로 변환하는 방법은 무엇입니까 ??

+1

는'read.csv2'의'colClasses' 옵션을 못하게 날짜 형식으로 변환을 수행. 대신, 해당 옵션을 사용하지 않고 데이터를 읽고 나중에 적절한 형식을 지정하여 날짜 클래스로 변환하십시오. 'df1 <- read.csv2 (text = "08.09.2016", header = FALSE); df1 [, 1], - 형식의 "% m. % d. % Y")'. – RHertel

답변

2

문자를 날짜로 변환 할 때 표준이 아닌 경우 형식을 지정해야합니다. 오류는 as.Date("08.09.2016")의 결과입니다. 하지만 as.Date("08.09.2016", format = "%m.%d.%Y")을하면 괜찮습니다.

올바른 날짜 형식을 지정하기 위해 read.csv2 형식을 전달할 수 있는지 여부가 확실하지 않습니다 (어쩌면). 나는 단순히이 날짜 열을 요인으로 읽은 다음이 열에서 직접 as.Date(as.character(), format = "%m.%d.%Y")을 수행합니다.

일반적으로 우리는 "dd/mm/yy"형식을 사용하여 날짜를 해당 형식으로 재구성 할 수 있습니까?

을 사용하십시오.


완전한 예 :

format(as.Date("08.09.2016", format = "%m.%d.%Y"), format = "%d/%m/%y") 
# [1] "09/08/16" 
+1

자신의 형식을'read.csv2'로 전달하는 것이 가능합니다 - 먼저 자신 만의 클래스를 만들어야합니다 - http://stackoverflow.com/a/13022441/496803 – thelatemail

+0

@thelatemail 답변이 많은 훌륭한 링크 . 'Defaults' 패키지가 존재하지 않기 때문에'setClass'가 가장 좋습니다. –