Add Birthday Song to Google Contacts R Script

One of my favorite music columns of the past several years is The Number Ones on Stereogum.  The column is reviewing every single Billboard Hot 100 Number of Hit of all time.  I was looking through my contacts and thought it would be nice to know what someone’s #1 Birthday Song was, because that is the type of person I am (mine was Blondie’s “Call Me” – Tom Breihan gave it a 10/10). 

I thought it would be interesting to have that available for my friends and other network folks,  but I would never want to manually add that information.  So using rvest, I threw together a script that takes a csv downloaded from google contacts, finds every entry with a complete birth date (month, date, and year), and adds a custom field with the song’s name and title.  This data is then exported to a new csv. 

One then needs to make a minor edit to the header so that it looks like the next image (the single “.”s need to be replaced with a ” ” and a the “…”s need to be replaced with a ” – “).  Then the file can be re-imported into google contacts.  You then need to run “merge and fix” on all of these “new” contacts and voila you now can tell your friends what their #1 Birthday Song is.

The script is available here.


I was able to make a little time to post links to the code repositories that are up on Git Hub that I have been working on.  The first is ERTAC EGU, which is a python-based power plant projection tool that I contribute code to.  The second is r4movess, which is an R library I developed for accessing data from EPA’s MOVES model.

You can check out the code through here.

Social Graph Project – Making the Network Map (5 of 5)

We have gotten to the last entry in the series on how to make a social graph using  For this entry I will walk through some of the settings you can play with.

Quick review. In the first entry I discussed an overview of my social graphing project and in the second entry I discussed how to deal with data from LinkedIn. In the third entry I discussed organizing data in google contacts.  In the  fourth entry I discussed reformatting the data from google into a format to import into kumu and how to set up the social graph.

You can take a look at the final map here:

Now to begin a brief trot through playing with settings.  Here is a glance at what the network looks like centered on Frodo:

To start changing the visuals we will go to the upper right hand corner to settings (the bottom of these four boxes):

We will next add some color by organization:

Next let’s change the way the connections are done and set them up by tags and watch the network swing and fly!  This setting is probably the best way to explore different aspects of your network since it will move the nodes around in different ways:

Changing on size isn’t an option for the way this one was set up (it needs a numeric field of some type), but is another good option to explore the data.  I didn’t really play with the filter option when I developed my personal network, but it could come in handy too if you have too many nodes to manage. There is also an advanced editor that allows you to code changes, but that isn’t something I had the wherewithal to explore.

One last thing to note you can get a PDF of your final project.  When I did a private project I had to pay for this luxury, but either kumo changed their fee structure or you don’t have to pay to make a PDF of a public project.  You can find the PDF option here:

Well that is it.  I hope you enjoyed my lesson on how to put together a social network diagram.  I definitely learned a lot about who I could reach out to on certain issues through this project and it definitely incentivized me to clean up my contact list, which has paid off dividends.  Part of the reason it took so long to finish the last entry was that I was using my newfound network weaving understanding to implement a challenging advocacy project.  Perhaps if that is successful I will write up a few entries on that.