I am trying to build some estimates that I draw from an external source. The date format is as follows:
2011-08-23T17:07:05
So, I parse it with strptime(date, "%FT%X") and get a POSIXlt . I get a full data frame that looks like this:
date subject grade 1 2011-08-23 17:07:05 AP Biology 95.83 2 2011-08-24 17:07:03 AP Biology 95.83 3 2011-08-25 17:08:27 AP Biology 95.83 4 2011-08-17 17:05:54 US History 157.14 5 2011-08-18 17:05:24 US History 157.14 6 2011-08-19 17:05:35 US History 157.14 7 2011-08-22 17:06:25 US History 157.14 8 2011-08-23 17:07:05 US History 157.14 9 2011-08-24 17:07:03 US History 157.14 10 2011-08-25 17:08:27 US History 157.14 11 2011-08-19 17:05:35 Yearbook 0.00 12 2011-08-22 17:06:25 Yearbook 0.00 13 2011-08-23 17:07:05 Yearbook 100.00 14 2011-08-24 17:07:03 Yearbook 100.00 15 2011-08-25 17:08:27 Yearbook 100.00
With the following structure:
'data.frame': 15 obs. of 3 variables: $ date : POSIXlt, format: "2011-08-23 17:07:05" "2011-08-24 17:07:03" ... $ subject: Factor w/ 3 levels "AP Biology","US History",..: 1 1 1 2 2 2 2 ... $ grade : num 95.8 95.8 95.8 157.1 157.1 ...
When I try to build this data:
> ggplot(data=grades, aes(date, grade, factor=subject)) + geom_line() Error in if (length(range) == 1 || diff(range) == 0) { : missing value where TRUE/FALSE needed
I don't know what I'm doing wrong here. I narrowed it down to date processing by doing the following:
ggplot(data=grades, aes(seq(length(grades[,1])), grade, color=subject)) + geom_line()
... but how to handle the date?
Dustin
source share