The Secrets to Host a Successful Meetup Event
Meetup is an extraordinary platform for bringing people together who share a common interest. Hosts, who schedule meetup events, frequently do so with high expectations. So why do some meetups attract as few as ten or fewer people while others attract over five hundred? This project provides insights to discover the secrets of hosting an event with a high number of participants.
According to this article, New York, San Francisco, Chicago, Washington DC, Palo Alto, Boston, Los Angeles, Mountain View, Seattle, and Austin are the top ten cities in terms of meetup membership. Data for events within 10 miles of these ten cities was scraped from meetup.com using Beautiful Soup, a python package (see code here). Only public events are included in the analysis, which is done using R code (see code here). Information about 12,123 events was collected and event dates ranged from 08/10/2016 to 10/07/2016. Below is a table to display the attributes that were scraped:
|Group information||Event information|
• Founded date
• Event date
Exploratory Data Analysis
The number of events in these ten cities follows a trend that mirrors the membership size. New York and San Francisco both have more than two thousands events in total. However, cities in California that are tech-oriented, like Palo Alto, Mountain View, and San Francisco, rank top three if we are looking at the average number of participants per event.
Note: Y-axes are the starting time of an event. If a certain time block has less then three events, the data is filtered out to prevent bias.
The heat map on the left shows how the total number of events distributes in weekdays and during the time of a day. The most popular time to host an event is Thursday from 6pm to 9pm, and most events started in the same time frame in the evening across weekdays. Interestingly, if we look at the heat map on the right, which plots the distribution of number of participants per event, a slightly different pattern is shown. Events on Monday through Thursday from 3pm to 9pm seem to have more participants whereas events hosted on Friday and weekend have more participants from 9pm to 12am.
Frequent Words Used
Word clouds were generated with the information collected from the meetup events, providing insights into the most popular words used to market these events. The words used to generate the word cloud exclude English stop words, as well as the following: “NYC”, “New Jersey”, “New York”, “Chicago”, “Seattle”, “Bay Area”, “Austin”, “Boston”, “Silicon Valley”, "Washington", "Los Angeles", "Mountain View", "San Francisco", "Central Park”, "Meetup", "Meeting", "Meet", "Event", "Group", "Club", "Events” "North", "South", "East", "West", "Area”, "City", "Brooklyn", "Jersey", "Manhattan", "Hoboken", "Queens", "Hudson”, "2016", "August", "September", "October”, "Day", "Monday", "Tuesday", “Wednesday”, "Thursday", "Friday", "Saturday", “Sunday”.
The size of the word in word cloud is proportional to the frequency count. The bar charts shows the count of the top ten most frequent words.
We can see that “Free” and “Night” are the top two most frequent words used in the event titles. Not surprisingly, who doesn’t like free events and/or hang out at night?
As for group names, “soccer” is the second most frequent word among group names. This is surprising given that soccer is not that popular of a spectator sport in the US, and the US is not thought of as a country that is passionate about soccer. And “Book” indicates that there may be plenty of reading clubs on meetup.com.
The most frequent keywords of a group are “Social” and “Networking”, which perfectly match with the purpose of meetup events. Interestingly, “women” ranks third while “men” does not appear at all in the top ten. This finding fits the stereotype that girls like to hang out as a group. And “Professional”, “Development”, “New”, “Technology”, and “Business” indicate that meetup is not only a platform to boost organized outings for leisure purposes but is also used to build one’s professional network or to advance one’s knowledge.
Predictive Model Building
The table below provides a detailed descriptions of the data collected.
|Group||member_count||Number of members in the group|
|past_meetup_count||Number of past meetup events hosted by the group|
|upcoming_event_count||Number of upcoming meetup events planned by the group|
|review_count||Number of reviews given to the group|
|sponsor_count||Number of sponsors of the group|
|Event||event_day||The day, Monday through Sunday, that the event is being hosted|
|event_time||The starting time of an event. A day is divided into eight time frames, each of which is three hours|
|price||The price of an event if a ticket is required|
Besides the raw information scraped online, several other features were created for building a model. See table below for detailed descriptions.
|Event||comment_reply_count||The sum of the comments and reply counts for an event|
|top_title_count||The count of words in the Event Title that are in the top 1% of all words used.
For example, “free”, “night”, and “happy” are in the top 1%
|Group||days_gr_has_founded||The age of the meetup group (in days) at the time the event is hosted|
|top_gr_name_count||The count of words in the Group Name that are in the top 1% of all words used|
|top_gr_keyword_count||The count of word in the Group Keywords that are in top 1% of all words used|
First, a multiple linear regression was built, but the model violated all assumptions which are linearity, constant variance, normality, and independent errors. Then ridge and lasso regressions were conducted with the use of 5-fold cross validation to locate the best lambdas. Both regressions have an MSE of ~485. The coefficients for Tuesday, Wednesday, Thursday, 6pm-9pm, Mountain View, and Palo Alto are higher, which match to the findings in the bar charts and heat maps in the exploratory data analysis section above.
An alternative model, decision tree, was used and a pruned tree was built. The above tree plot is based on three variables: member_count, upcoming_event_count, and past_meetup_count. The MSE for this model has slightly decreased to ~450, which means a decision tree model may be a better choice for this dataset. In an attempt to increase the over all predictive accuracy, a random forest model was then constructed. The workflow is as follows:
- Set the seed to ensure reproducibility
- Randomly subset 80% of data into training set and 20% to test set
- Plot density plots to check if both subset have the same distributions for the number of participants
- Find the optimized number of variables randomly sampled as candidates at each split
with the lowest out-of-bag error
- Run random forest and get the variable importance plot
- Predict the number of participants for the test set and calculate the MSE
The MSE of the random forest model is ~225, which outperforms all the other previous regressions. From the variable importance plot above, we can see that the group information (highlighted in red) such as upcoming event count and member count are more important than event information (highlighted in blue). Besides picking the right day and time to host an event, how active the group is may also affect the number of participants. Activity is defined as a combination of number of events (both past and upcoming), as well as the count of comments and replies. These emerge as high value variables.
Start your meetup group now and grow your member counts, then host a free, socializing, networking event on Thursday starting from 6pm to 9pm!
Technical Development (Examples)
See full code on GitHub.
- Web scraping
- Model building
Contributor: Anne Chen