for(i in 3:length(date)+1) {
month_i<-as.numeric(month(date[i]))
if(month_i==3) diffmonth[i]<-sumtotal[i-1]
else diffmonth[i]<-sumtotal[i-1]-sumtotal[i-2]
}
我这里date是一个储存了日期的向量,讯婚礼要做的就是,判断datep[i]月份是不是为3,如果是3的话,diffmonth[i-1]采取不同的赋值。但程序总是报错:
Error in if (month_i == 3) { : missing value where TRUE/FALSE needed
比如
> date
[1] "2015-12-31" "2016-02-29" "2016-03-31" "2016-04-30" "2016-05-31" "2016-06-30" "2016-07-31" "2016-08-31" "2016-09-30"
[10] "2016-10-31" "2016-11-30" "2016-12-31" "2017-02-28" "2017-03-31" "2017-04-30" "2017-05-31"
> diffmonth
[1] 2046.312 2917.064 NA 1340.971 1537.071 2082.445 2305.795 1665.273 1755.292 1994.158 1956.122 2172.993 2979.521
[14] 2373.737 1408.300 1745.548
为什么2017-03对应的计算就正常,而第三个元素2016-03就是NA呢?


雷达卡



京公网安备 11010802022788号







