2016-10-28 3 views
0

분수 연도와 일을 R로 실제 날짜 형식으로 변환 할 수 있습니까?분수 연도와 현재 날짜를 R로 변환

예를 들어 아래 예제 데이터의 time 열에있는 1900.00은 1900 년 1 월에 해당하며 1900.08은 2 월에 해당합니다. dayofyr은 연중 날짜에 해당합니다.

MYDATA < - 구조 (목록 (시각 = C를 (1,900, 1,900, 1,900, 1,900, 1,900, 1,900, 1,900, 1,900, 1,900, 1,900, 1,900, 1,900, 1,900, 1,900, 1,900, 1,900, 1,900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900.08, 1900.08, 1900.08, 1900.08, 1900.08, 1900.08, 1900.08, 1900.08, 1900.08, 1900.08 , 1900.08, 1900.08, 1900.08, 1900.08, 1900.08, 1900.08, 1900.08, 1900.08, 1900.08, 1900.08, 1900.08, 1900.08, 1900.08, 1900.08, 1900.08, 1900.08, 1900.08, 1900.08, 1900.08, 1900.17, 1900.17, 1900.17, 1900.17, 1900.17, 1900.17, 1900.17, 1900.17, 1900.17, 1900.17, 1900.17, 1900.17, 1900.17, 1900.17, 1900.17, 1900.17, 1900.17, 1900.17, 1900.17, 1900.17, 1900.17, 1900.17, 1900.17, 1900.17, 1900.17, 1900.17, 1900.17, 1900.17, 1900.17, 1900.17, 1900.17, 1900.25, 1900.25, 1900.25, 1900.25, 1900.25, 1900.25, 1900.25, 1900.25, 1900.25, 1900.25, 1900.25, 1900.25, 1900.25, 1900.25, 1900.25, 1900.25, 1900.25, 1900.25, 1900.25, 1900.25, 1900.25, 1900.25, 1900.25, 1900.25, 1900.25, 1900.25, 1900.25, 1900.25 , 1900.25, 1900.25, 1900.33, 1900.33, 1900.33, 1900.33, 1900.33, 1900.33, 1900.33, 1900.33, 1900.33, 1900.33, 1900.33, 1900.33, 1900.33, 1900.33, 1900.33, 1900.33, 1900.33, 1900.33, 1900.33, 1900.33, 1900.33, 1900.33, 1900.33, 1900.33, 1900.33, 1900.33, 1900.33, 1900.33, 1900.33, 1900.33, 1900.33, 1900.42, 1900.42, 1900.42, 1900.42, 1900.42, 1900.42, 1900.42, 1900.42, 1900.42, 1900.42, 1900.42, 1900.42, 1900.42, 1900.42, 1900.42, 1900.42, 1900.42 , 1900.42, 1900.42, 1900.42, 1900.42, 1900.42, 1900.42, 1900.42, 1900.42, 1900.42, 1900.42, 1900.42, 1900.42, 1900.42, 1900.5, 1900.5, 1900.5, 1900.5, 1900.5, 1900.5, 1900.5, 1900.5, 1900.5, 1900.5, 1900.5, 1900.5, 1900.5, 1900.5, 1900.5, 1900.5, 1900.5, 1900.5, 1900.5, 1900.5, 1900.5, 1900.5, 1900.5, 1900.5, 1900.5, 1900.5, 1900.5, 1900.5, 1900.5, 1900.5, 1900.5, 1900.58, 1900.58, 1900.58 , 1900.58, 1900.58, 1900.58, 1900.58, 1900.58, 1900.58, 1900.58, 1900.58, 1900.58, 1900.58, 1900.58, 1900.58, 1900.58, 1900.58, 1900.58, 1900.58, 1900.58, 1900.58, 1900.58, 1900.58, 1900.58, 1900.58, 1900.58, 1900.58, 1900.58, 1900.58, 1900.58, 1900.58, 1900.67, 1900.67, 1900.67, 1900.67, 1900.67, 1900.67, 1900.67, 1900.67, 1900.67, 1900.67, 1900.67, 1900.67, 1900.67, 1900.67, 1900.67, 1900.67, 1900.67, 1900.67, 1900.67, 1900.67, 1900.67, 1900.67, 1900.67, 1900.67, 1900.67, 1900.67 , 1900.67, 1900.67, 1900.67, 1900.67, 1900.75, 1900.75, 1900.75, 1900.75, 1900.75, 1900.75, 1900.75, 1900.75, 1900.75, 1900.75, 1900.75, 1900.75, 1900.75, 1900.75, 1900.75, 1900.75, 1900.75, 1900.75, 1900.75, 1900.75, 1900.75, 1900.75, 1900.75, 1900.75, 1900.75, 1900.75, 1900.75, 1900.75, 1900.75, 1900.75, 1900.75, 1900.83, 1900.83, 1900.83, 1900.83, 1900.83, 1900.83, 1900.83, 1900.83, 1900.83, 1900.83, 1900.83, 1900.83, 1900.83, 1900.83, 1900.83 , 1900.83, 1900.83, 1900.83, 1900.83, 1900.83, 1900.83, 1900.83, 1900.83 1900.83, 1900.83, 1900.83, 1900.83, 1900.83, 1900.83, 1900.83, 1900.92, 1900.92, 1900.92, 1900.92, 1900.92, 1900.92, 1900.92, 1900.92, 1900.92, 1900.92, 1900.92, 1900.92, 1900.92, 1900.92, 1900.92, 1900.92, 1900.92, 1900.92, 1900.92, 1900.92, 1900.92, 1900.92, 1900.92, 1900.92, 1900.92, 1900.92, 1900.92, 1900.92,1900.92, 1900.92, 1900.92), dayofyr = 1 : 366), class = c ("tbl_df" 「TBL」, 「data.frame ") row.names의 = C를 (NA, -366L) .Names의 = C를 ("시간 " "dayofyr ")) floor

+1

'lubridate :: date_decimal (1900.08, tz = "UTC")'를 확인 했습니까? – lukeA

+0

아니요, 확인해 보겠습니다. 감사. – SoilSciGuy

답변

1

사용 소수 부분을 제거 "-01-01"을 추가하는 문자열로 변환하면로 변환됩니다.클래스에 일 수 -1을 더하십시오. 패키지가 사용되지 않습니다.

transform(myData, date = as.Date(paste0(floor(time), "-01-01")) + dayofyr - 1) 
+0

고마워, 난 그냥 바닥 옵션을 십진수를 제거하고 다음 일년 붙여 넣기 엉망 이었지만, 이것은 훨씬 더 나은 솔루션입니다. 윤년도 함께 작동합니다. – SoilSciGuy

관련 문제