6.5 Create a Month Year column
Code
## avail but open.date is in the future
d %>%
filter(!is.na(open.date),
open.date > Sys.Date(),
status == 'avail')
dd = d %>%
filter(!is.na(open.date),
open.date > '2010-01-01',
open.date <= Sys.Date(),
status == 'avail') %>%
select(network2,
network3,
lat, lon,
lev2, lev3,
open.date,
status) %>%
mutate(month = months(open.date,
abbreviate = T), ## could also use gsub or substr
month = factor(month,
levels = month.abb),
year = substr(open.date, 1, 4),
month.year = paste0(month,
' ',
year)) %>%
arrange(year,
month) %>%
mutate(month.year = factor(month.year,
levels = unique(month.year)))
head(dd)
[1] fuel.type.code station.name
[3] street.address intersection.directions
[5] city state
[7] zip station.phone
[9] status.code expected.date
[11] groups.with.access.code access.days.time
[13] cards.accepted lev2
[15] lev3 ev.other.info
[17] network ev.network.web
[19] geocode.status lat
[21] lon date.last.confirmed
[23] id updated.at
[25] owner.type.code federal.agency.id
[27] federal.agency.name open.date
[29] ev.connector.types country
[31] access.code access.detail.code
[33] federal.agency.code facility.type
[35] ev.pricing ev.on.site.renewable.source
[37] restricted.access rd.blends
[39] rd.blended.with.biodiesel rd.maximum.biodiesel.level
[41] nps.unit.name maximum.vehicle.class
[43] src status
[45] lev23 network2
[47] network3
<0 rows> (or 0-length row.names)
network2 network3 lat lon lev2 lev3 open.date status
1 Non-Networked Non-Networked 38.70931 -90.68313 2 0 2010-01-15 avail
2 Non-Networked Non-Networked 35.92200 -84.14211 7 0 2010-01-20 avail
3 Non-Networked Non-Networked 49.85030 -100.92921 1 0 2010-02-01 avail
4 Non-Networked Non-Networked 39.46081 -123.80681 1 0 2010-03-01 avail
5 Non-Networked Non-Networked 49.31041 -124.35613 1 0 2010-03-15 avail
6 Non-Networked Non-Networked 47.67335 -117.38893 2 0 2010-04-15 avail
month year month.year
1 Jan 2010 Jan 2010
2 Jan 2010 Jan 2010
3 Feb 2010 Feb 2010
4 Mar 2010 Mar 2010
5 Mar 2010 Mar 2010
6 Apr 2010 Apr 2010