On Jul 10, 2010, at 9:42 AM, nvanzuy...@gmail.com wrote:
Dear Kevin,
Assuming that closure and referral are two columns in your df and
you have
already converted them to date columns.
The following should work:
df$Dec04<- ifelse(df$referral <"2005-01-01" & df$closure >
"2003-12-31" |
df$closure== "", "Yes", "No")
if you are trying to account for the column closure containing NA
values
then:
df$Dec04<- ifelse(df$referral <"2005-01-01" & df$closure >
"2003-12-31" |
is.na(df$closure)== "TRUE", "Yes", "No")
The entire point of is.na() is to return a logical value, so is,na()
needs no further testing with "== 'TRUE'". It's also not clear why one
would want to consider missing data to be considered in the same
category as dates actually between the fences being constructed. Seems
better to let the value of the ifelse conditional expression be NA and
have ifelse() therefore return NA.
not sure if how you have read your data in whether you included
blanks in
your NA strings or not?
That should have been taken care of with the as.Date step:
> as.Date("", "%d/%m/%Y")
[1] NA
> as.Date(" ", "%d/%m/%Y")
[1] NA
Hope this helps,
Natalie
On Jul 10, 2010 2:29pm, "Wang, Kevin (SYD)" <kevinw...@kpmg.com.au>
wrote:
I'm trying to check a column of dates and creating indicator
variables
showing different time periods.
For example, if I were to do this in Excel I would have something
like:
Year to Dec 2004=IF(AND(referral dateDATE(2003,12,31), LEN($closure
date)
= 0)), "Yes", "No")
for the "Year to Dec 2004" column.
I've read the data into R and converted the two columns (referral
date
and closure date) to as.Date() format (found this format from r-
help):
referral
closure
But then have trouble doing the "if" checking. I tried something
like:
Dec04
(closure > as.Date("31/12/2003", "%d/%m/%Y") || closure
= ""), "Yes", "No")
but got an error message:
Error in closure > as.Date("31/12/2003", "%d/%m/%Y") || closure =
"" :
could not find function "||
I haven't really played with dates in R before so would really
appreciate
some guidance on this.
(I'm avoiding Excel because there are over 130,000 rows to check,
and I
need to repeat this process for each quarter since Dec 2004. When I
tried
this in Excel it just took all the memory I have on my computer and
freezes the entire workbook).
--
David Winsemius, MD
West Hartford, CT
______________________________________________
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.