0

I have data:

Purshased_Date  value     Refund_Date   MONTH  YEAR   MDY         INTNX
2015-08-14      0         2015-08-14    8      2015   2015-08-01  2015-08-31
2015-08-14      96        NA            8      2015   2015-08-01  2015-08-31
2015-08-14      127       NA            8      2015   2015-08-01  2015-08-31

I want to create a new column by calculating above data.
The code is:

library(data.table)
data[, NewCol := value * pmax(0, difftime(pmin(Refund_Date, INTNX), pmax(Purshased_Date, MDY-1), units = 'day')) / as.numeric(difftime(INTNX, MDY-1, units = 'day'))]

However, R considers pmin(Refund_Date1, INTNX) = NA when Refund_Date = NA.
I don't want to use NA.
What I want is when Refund_Date = NA, pmin(Refund_Date, INTNX) = INTNX
The result I want looks like following:

Purshased_Date  value     Refund_Date   MONTH  YEAR   MDY         INTNX         NewCol
2015-08-14      0         2015-08-14    8      2015   2015-08-01  2015-08-31    0
2015-08-14      96        NA            8      2015   2015-08-01  2015-08-31    52.64516129
2015-08-14      127       NA            8      2015   2015-08-01  2015-08-31    69.64516129

How can I do? Any suggestion?

Peter Chen
  • 1,464
  • 3
  • 21
  • 48

0 Answers0