[英]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.