[英]Finding the days between 2 days using functions in R and condensing the vector
因此,我需要創建一個接受多個日期n的函數,並創建一個日期范圍為n-1且這些日期范圍之間的天數不同的新向量。
c("Jan. 20, 2009", "July 20, 1969", "June 28, 1914", "July 14, 1789", "Oct.
14, 1066"))
Time differences in days
10/14/1066-7/14/1789 7/14/1789-6/28/1914 6/28/1914-7/20/1969
263979 45638 20111
7/20/1969-1/20/2009
14429
到目前為止,這就是我所擁有的。 我正在努力尋找一種方法來迭代並創建一個較短的向量。 我已經重新格式化了日期,但是我不知道如何將日期范圍內的日期連接起來並獲取這些日期范圍內的天數。 我正在嘗試下面的代碼中的class(d),但是它不起作用。
days_between = function(v) {
sort(mdy(v))
d = ymd("1066-10-14") - ymd("1789-07-14")
class(d)
}
希望這足夠具體並且有意義。 謝謝。
x = c("Jan. 20, 2009", "July 20, 1969", "June 28, 1914", "July 14, 1789", "Oct.
14, 1066")
d = lubridate::mdy(x)
d = d[order(d)]
result = diff(d)
labels = format(d, "%m/%d/%Y")
names(result) = paste(head(labels, -1), labels[-1], sep = "-")
result
Time differences in days
# 10/14/1066-07/14/1789 07/14/1789-06/28/1914 06/28/1914-07/20/1969 07/20/1969-01/20/2009
# 263979 45638 20111 14429
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.