繁体   English   中英

日期小于可变日期的R子集数据框

[英]R subset data frame where date is less than a variable date

我正在尝试选择日期需要小于(计算/可变)日期的数据框的子集。

以下代码引发错误:

loanFrame_excluding_young <- loanFrame[loanFrame$LoanEffective < AddMonths(as.Date("2015-11-11"),-loanFrame$TermMonths),]
Error in seq.Date(X[[i]], ...) : 'by' must be of length 1

有任何想法吗?

问题在于DescTools :: AddMonths函数。 在AddMonths(x,n,ceiling = TRUE)中,n只能是一个数字,不能是向量。

使用以下代码确实可以使用lubridate的%m-%函数。

library(lubridate)

loanFrame <- data.frame(TermMonths = c(1,3,5,7), 
                        LoanEffective = as.Date(c("2015-09-15", "2015-08-05", "2015-10-01", "2015-06-25")))

loanFrame_excluding_young <- loanFrame[loanFrame$LoanEffective < as.Date("2015-11-11") %m-% months(loanFrame$TermMonths),]

loanFrame_excluding_young

  TermMonths LoanEffective
1          1    2015-09-15
2          3    2015-08-05

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM