저는 R에 익숙하지 않아이 문제로 많은 어려움을 겪고 있습니다. 여러 곳의 솔루션을 찾으려고했으나 시도 할 수 없었습니다.
여러 개의 CSV 파일 (약 158 개)이 포함 된 폴더가 있습니다. 각 csv에는 날짜와 시간이 포함 된 열이 있습니다. 나는 날짜의 형식이 CSV 파일 전체에 표준이 아니므로 분석을 망쳤다. 예 :날짜와 시간 열이있는 CSV 파일을 R의 다른 형식으로 가져 오기 : 표준화하는 방법이 있습니까?
>head(file1) # date format is in MONTH/day/year
DateTime Value
6/2/14 11:00:01 PM 24.111
6/3/14 1:30:01 AM 21.61
6/3/14 4:00:01 AM 20.609
>head(file2) # date format is in day/MONTH/year
DateTime Value
03/06/14 1:30:01 AM 21.588
03/06/14 4:00:01 AM 20.086
03/06/14 6:30:01 AM 18.584
파일을 바인드하기 위해 다음 루프를 만들었습니다.
>files.names<-list.files(getwd(),pattern="*.csv")
>theList <- lapply(files.names,function(x){
> theData <- read.csv(x,skip=18) })
>theResult <- do.call(rbind,theList)
>head(theResult)
Date.Time Value
1 6/2/14 11:00:01 PM 24.111
2 6/3/14 1:30:01 AM 21.610
3 6/3/14 4:00:01 AM 20.609
4 6/3/14 6:30:01 AM 19.107
5 6/3/14 9:00:01 AM 19.608
6 6/3/14 11:30:01 AM 20.609
내 생각은 무엇 : 내가 그들을 결합하기 전에 각 CSV의 루프에서 Date.Time
칼럼의 형식을 표준화 할 수있는 방법이있을 것으로 추측하고있다. 즉, 내가 전에 do.call(rbind,theList)
을해야하지만, 확실하지 않은 것 같아요 (또는 가능한 경우). Excel에서 각 CSV 파일의 서식을 지정하는 것이 엉덩이의 고통 일 수 있으므로 도움을 받으시기 바랍니다. P. ?strptime
도움말 페이지에서 적절한 형식 문자열을 사용하는
"theResult $ Date.Time"에 왜 lubridate 또는 intellidate 패키지를 사용할 수 없습니까? – Dan
예 ... 전에. "% d/% m/% y % I : % M : % S % p"와 함께 asformat = "% m/% d/% y % I : % M : % S % 다른 경우에는 '? strptime'을 읽으십시오. 'anytime' 패키지가 중요 할 수도 있습니다. –
감사합니다. @ 단, 고맙습니다. 'lubridate' 패키지를 파헤 쳐서'parse_date_time' 함수를 사용하여 끝냈습니다 - (https://stackoverflow.com/questions/26064292/guess-formats-r-lubridate)도 도움이되었습니다. 나는 나의 해결책을 게시 할 것이다. –