Are join dates from the API correct?
meetup_members <- read_csv("latest/rladies_meetup_members.csv")
meetup_groups <- read_csv("latest/rladies_meetup_groups.csv")
# compare join date with group.profile.created date
meetup_members_join_date <- meetup_members %>%
select(id, status, joined, group_profile.created, group_profile.visited, group_profile.updated, group_profile.group.urlname) %>%
mutate(
joined=floor_date(as.POSIXct(joined/1000, tz="UTC", origin="1970-01-01"), unit="days"),
group_profile.created=floor_date(as.POSIXct(group_profile.created/1000, tz="UTC", origin="1970-01-01"), unit="days"),
group_profile.visited=floor_date(as.POSIXct(group_profile.visited/1000, tz="UTC", origin="1970-01-01"), unit="days"),
group_profile.updated=floor_date(as.POSIXct(group_profile.updated/1000, tz="UTC", origin="1970-01-01"), unit="days")
)
meetup_members_join_date <- meetup_members_join_date %>%
inner_join(meetup_groups %>% select(urlname, created, members) %>% unique(), by=c("group_profile.group.urlname"="urlname"))
meetup_members_join_date <- meetup_members_join_date %>%
mutate(
created=floor_date(as.POSIXct(created/1000, tz="UTC", origin="1970-01-01"), unit="days")
) %>%
rename(group_profile.group.created=created,
group_profile.group.members=members) # for consistency
meetup_groups_top <- meetup_groups %>%
top_n(20, members) %>%
select(urlname)
meetup_members_sample <- meetup_members_join_date %>%
filter(group_profile.group.urlname %in% meetup_groups_top$urlname) %>%
group_by(group_profile.group.urlname) %>%
sample_n(10)
meetup_members_join_date_melt <- melt(meetup_members_sample, id=c("id", "group_profile.group.urlname"),
measure=c("joined", "group_profile.created", "group_profile.group.created"))
ggplot(meetup_members_join_date_melt,
aes(x=factor(id), y=factor(value))) +
geom_line(aes(group=factor(id))) +
geom_point(aes(color=variable, group=variable)) +
theme(axis.text.y=element_blank(), axis.text.x=element_blank()) +
facet_wrap(~ group_profile.group.urlname, scales="free") +
labs(x="Member", y="Date")