Converting POSIXct format date to Character format
Hi ma015k3113,
I suspect that you are asking the wrong question.
# create an example data frame with an extra field
PLC<-read.table(text="YEAR_END_Date EPS junk
2010-09-10 .10 A
2009-08-10 .20 B",
header=TRUE,
stringsAsFactors=FALSE)
# first, I think that you may already have the date in character format
# if you get this result, you don't need to convert it
sapply(PLC,"class")
YEAR_END_Date EPS junk
"character" "numeric" "character"
# however, if you get this result
sapply(PLC,"class")
$YEAR_END_Date
[1] "POSIXlt" "POSIXt"
$EPS
[1] "numeric"
$junk
[1] "character"
# then you do have a POSIX date in the first field,
# so you can do this:
PLC$YEAR_END_Date<-format(PLC$YEAR_END_Date,format="%Y-%m-%d")
# then if you want to select those two fields for further processing
# use this expression
PLC[,c("YEAR_END_Date","EPS")]
Jim
On Thu, Mar 25, 2021 at 6:11 AM e-mail ma015k3113 via R-help
<r-help at r-project.org> wrote:
I have a data frame "PLC" which has two variables Year_END_Date EPS YEAR_END_Date EPS 2010-09-10 .10 2009-08-10 .20 When I tried to convert Year_END_Date to character format using select(PLC, format(Year_END_Date,format = "%B %d, %Y"), EPS) I get an error Error: Can't subset columns that don't exist. x Column `Year_END_Date` doesn't exist. I tried using PLC_1 <- select(PLC, as.character(YEAR_END_DATE), EPS) I get the following error Error: Can't subset columns that don't exist. x Columns `2010-09-30`, `2009-09-30`, `2008-09-30`, `2007-09-30`, `2006-09-30`, etc. don't exist. Run `rlang::last_error()` to see where the error occurred. Can anyone please guide me what is happening and how can I resolve it?
______________________________________________ R-help at r-project.org mailing list -- To UNSUBSCRIBE and more, see 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.