Description Details Author(s) References See Also Examples
R Crowdflower API Client
The crowdflower package provides programmatic access to the Crowdflower API. Crowdflower is a prominent crowdsourcing platform that connects “customers” to a large universe of “channels”, where “contributors” complete small tasks in exchange for money. Unlike some other crowdsourcing platforms, Crowdflower can distribute work to multiple “channels”, enabling you to draw a diverse, international set of crowdworkers.
Crowdflower works through “jobs”, where one job can involve multiple “rows” or “units” of input data. For example, in a sentiment analysis task, a customer (you) might have 1000 tweets to be coded for sentiment. This would constitute one job with 1000 rows/units that will be completed by contributors.
The basic workflow is to create a job, add data to the job, configure the “channels” that the job will be distributed to, and to finally retrieve the results. All of these actions can be performed with the crowdflower package.
The first step is to create a Crowdflower requester account and retrieve
an API key
from your account. To begin working, load the crowdflower package and
specify your API key as an environment variable. Within R, this can
be set with: Sys.setenv("CROWDFLOWER_API_KEY" = "example12345apikeystring")
.
Users may also be interested in the MTurkR package, which provides access to the Amazon Mechanical Turk crowdsourcing platform.
Maintainer: Kenneth Benoit kbenoit@lse.ac.uk
Authors:
Pablo Barberá pablo.barbera@nyu.edu
Thomas J. Leeper thosjleeper@gmail.com
API Overview API Response Codes API Request Guide
job_create
, job_channel_list
, job_add_data
, job_status
, report_get
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 | ## Not run:
# create new job
f1 <- system.file("templates/instructions1.html", package = "crowdflower")
f2 <- system.file("templates/cml1.xml", package = "crowdflower")
j <- job_create(title = "Job Title",
instructions = readChar(f1, nchars = 1e8L),
cml = readChar(f2, nchars = 1e8L))
# add one or more channels
job_channel_add(j, "neobux")
# upload data
d <- data.frame(variable = 1:3)
job_add_data(id = j, data = d)
# launch the job
job_launch(j)
# monitor the job
job_status(j)
# get aggregated results once completed
report_get(j)
# get results
results_get(j)
# delete job
job_delete(j)
## End(Not run)
|
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.