googleformr is a CRAN package for collecting data programmatically via Google Forms.
For collecting data online through user submissions, Google Forms can be a very convenient way to maintain a lot of control. Trying to use Google Sheets or public folders on Dropbox either requires maintain a lot of credentialling, sharing your keys, or giving users direct access to the data you’re collecting. I put this package together to put that convenience and power in reach of R.
As an illustration of how easy and useful googleformr can be, I thought there’d be no better way than to actually do something fun and useful for the open source/ R / data science communities?
For this project, I’ve created a special Google Form to collect data on why you are open source. Go have a look to see that it’s just an average Google Form that anyone can create with their own google account.
I’ve used googleformr to build a demo function called why_R_u_opensource, which posts whatever data I give it to my form. It comes with the latest dev version of googleformr package at my github account.
To test out googleformr, send in your reasons for using open source via the code below.
devtools::install_github("data-steve/googleformr") googleformr::why_R_u_opensource("") # <- your answer goes in quotes
How it works
The code below was used at build time to make this why_R_u_opensource function as a demostration of how easy it is to use the googleformr package.
# my form form <- “https://docs.google.com/forms/d/1Ttl_SGI1cjRHSw_oU7kwxnGESoMwf4BU4NMAqPA-BRs/viewform"
# my new function linked to my form why_R_u_opensource <- gformr(form, custom_reply= “Thanks for opening up!”)
To send data just put in inside your new function, like so:
# my data going to my form using my function why_R_u_opensource(“the R / open-source community is so helpful.”)
# the response I get from why_R_u_opensource Thanks for opening up!
The confirmation response can be customized to whatever you want when you build your own function. By default they are silent, so as to not be intrusive.
If there’s enough response to justify it, I plan to post some summaries on what is sent in. Should be cool.