6
A
回答
17
請嘗試以下方法從character
類(即文本)轉換爲POSIXlt
類,然後提取儒略日(yday
):
tmp <- as.POSIXlt("16Jun10", format = "%d%b%y")
tmp$yday
# [1] 166
更多細節功能設置:
?POSIXlt
?DateTimeClasses
另一個選項是使用Date
類,然後使用format
來提取朱連安日(請注意,此類定義的朱利安天數介於1:366之間,而POSIXlt爲0:365):
tmp <- as.Date("16Jun10", format = "%d%b%y")
format(tmp, "%j")
# [1] "167"
14
同理:
require(lubridate)
x = as.Date('2010-06-10')
yday(x)
[1] 161
另外請注意,使用lubridate:
> dmy('16Jun10')
[1] "2010-06-16 UTC"
+0
你能幫我在2012/06/09(yyyy/mm/dd)上得到像112161這樣的儒略日期嗎? – emeralddove
2
my.data = read.table(text = "
OBS MONTH1 DAY1 YEAR1
1 3 1 2012
2 3 31 2012
3 4 1 2012
4 4 30 2012
5 5 1 2012
6 5 31 2012
7 6 1 2012
8 6 30 2012
9 7 1 2012
10 7 31 2012
", header = TRUE, stringsAsFactors = FALSE)
my.data$MY.DATE1 <- do.call(paste, list(my.data$MONTH1, my.data$DAY1, my.data$YEAR1))
my.data$MY.DATE1 <- as.Date(my.data$MY.DATE1, format=c("%m %d %Y"))
my.data$my.julian.date <- as.numeric(format(my.data$MY.DATE1, "%j"))
my.data
回報,這在技術上是不正確,因爲朱利安日期不返回1,第一天每個1月份:
低於3210個
的日期順序日期:
OBS MONTH1 DAY1 YEAR1 MY.DATE1 my.julian.date
1 1 3 1 2012 2012-03-01 61
2 2 3 31 2012 2012-03-31 91
3 3 4 1 2012 2012-04-01 92
4 4 4 30 2012 2012-04-30 121
5 5 5 1 2012 2012-05-01 122
6 6 5 31 2012 2012-05-31 152
7 7 6 1 2012 2012-06-01 153
8 8 6 30 2012 2012-06-30 182
9 9 7 1 2012 2012-07-01 183
10 10 7 31 2012 2012-07-31 213
2
均可以使用的insol
包具有JD(x, inverse=FALSE)
函數轉換POSIXct朱利安天數(JDN)。
insol
包也有JDymd(year,month,day,hour=12,minute=0,sec=0)
自定義日期。
要顯示整個儒略日期(JD),您可能必須設置options(digits=16)
。
相關問題
- 1. excel如何將儒略日期轉換爲日曆日期?
- 2. ASP.NET從當前日期起儒略日
- 3. 儒略日()和strftime()兩個日期
- 4. 將日期轉換爲MongoDB ISO日期
- 5. 將日期轉換爲日期串行
- 6. 將MySQL日期轉換爲Java日期
- 7. 將linq日期轉換爲短日期
- 8. 將UTC日期秒轉換爲日期
- 9. PHP - 將日期轉換爲UTC日期
- 10. 將SQL日期轉換爲SAS日期
- 11. 將日期數轉換爲日期
- 12. R將日期轉換爲循環中的Julian日期
- 13. 如何將sqlite日期轉換爲R中的日期
- 14. 將日期範圍轉換爲R中的日期類型
- 15. 將非標準日期格式轉換爲R中的日期
- 16. 將日期字符串轉換爲帶日期的ISO日期
- 17. 將Julian日期轉換爲日期javascript中的日期
- 18. 將Stata轉換爲R的日期
- 19. 如何將R日期轉換爲Excel數字序列日期?
- 20. 如何將日期日期轉換爲英文日期格式?
- 21. 將日期轉換爲日期時顯示不同日期
- 22. 將美國日期(文本)轉換爲歐洲日期(日期)的Excel轉換
- 23. R lubridate將秒轉換爲日期
- 24. R將字符轉換爲日期
- 25. 將SAS日期格式轉換爲R
- 26. 將日期轉換爲varchar,然後將其轉換回日期
- 27. 轉換Json的日期爲Java日期
- 28. 將日期向量合併後的日期變化R
- 29. 什麼是儒略日期格式
- 30. R中的日期轉換
這個熱門的答案是關於_Day of Year/Ordinal date_和* not * about _ [Julian Date](https://en.wikipedia.org/wiki/Julian_day)_。朱利安日期是公元前4713年(!!)的日計數。爲什麼這個答案這麼多次upvoted ?. –
參見[*術語*](https://en.wikipedia.org/wiki/Julian_day#Terminology)小節 - *「除了天文學,Julian日期也可以指日曆年的數字(更多正確的,順序的日期)格里曆,特別是在計算機編程...「*。我猜測程序員的票數超過了天文學家的票數。 –
一個好的:)。請注意Andrei的答案如下。它實際上是計算天文學相關的儒略日期。還要注意,標籤朱連指的是與天文有關的含義。現在我投降.. –