context("Getting text from files")
file <- system.file("extdata", "portrait.txt", package = "syuzhet")
joyce <- get_text_as_string(file)
test_that("Text files can be read locally and parsed correctly",{
expect_that(joyce, is_a("String"))
expect_that(length(joyce), equals(1))
})
context("Parsing sentences")
sents <- get_sentences(joyce)
test_that("Sentences are correctly parsed.", {
expect_that(sents, is_a("character"))
expect_true(length(sents) > 1 ) # i.e., it's not just a single string anymore
expect_equal(sents[2], "He was baby tuckoo.")
})
context("Getting sentiment")
syu <- get_sentiment(sents, method = "syuzhet")
bing <- get_sentiment(sents, method = "bing")
afinn <- get_sentiment(sents, method = "afinn")
nrc <- get_sentiment(sents, method = "nrc")
test_that("Sentiments are returned correctly", {
expect_that(syu, is_a("numeric"))
expect_that(bing, is_a("integer"))
expect_that(afinn, is_a("integer"))
expect_that(nrc, is_a("numeric")) # because it is averages
expect_equal(length(sents), length(syu))
expect_equal(length(sents), length(bing))
expect_equal(length(sents), length(afinn))
expect_equal(length(sents), length(nrc))
})
context("Getting Sentiment in Parallel")
cl <- parallel::makeCluster(2) # No more than 2 cores on CRAN
parallel::clusterExport(cl = cl, c("get_sentiment", "get_sent_values", "get_nrc_sentiment", "get_nrc_values"))
syu_par <- get_sentiment(sents, method = "syuzhet", cl=cl)
bing_par <- get_sentiment(sents, method = "bing", cl=cl)
afinn_par <- get_sentiment(sents, method = "afinn", cl=cl)
nrc_par <- get_sentiment(sents, method = "nrc", cl=cl)
parallel::stopCluster(cl)
test_that("Parallel sentiments are returned correctly", {
expect_that(syu_par, is_a("numeric"))
expect_that(bing_par, is_a("integer"))
expect_that(afinn_par, is_a("integer"))
expect_that(nrc_par, is_a("numeric")) # because it is averages
expect_equal(length(sents), length(syu_par))
expect_equal(length(sents), length(bing_par))
expect_equal(length(sents), length(afinn_par))
expect_equal(length(sents), length(nrc_par))
expect_equal(syu, syu_par)
expect_equal(bing, bing_par)
expect_equal(afinn, afinn_par)
expect_equal(nrc, nrc_par)
})
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.