Nothing
test_that("object2id is working with a list", {
pat <- c('A', 'a b', 'xxx', 'C D', 'e f g')
ids1 <- quanteda:::object2id(phrase(pat), types = letters,
valuetype = 'fixed', case_insensitive = TRUE)
lis1 <- list("A" = 1, "a b" = c(1, 2), "C D" = c(3, 4),
"e f g" = c(5, 6, 7))
attr(lis1, "pattern") <- c(1, 2, 4, 5)
expect_equal(ids1, lis1)
ids2 <- quanteda:::object2id(phrase(pat), types = letters,
valuetype = 'fixed', case_insensitive = FALSE)
lis2 <- list("a b" = c(1, 2), "e f g" = c(5, 6, 7))
attr(lis2, "pattern") <- c(2, 5)
expect_equal(ids2, lis2)
ids3 <- quanteda:::object2id(phrase(pat), types = letters,
valuetype = 'fixed', case_insensitive = FALSE,
keep_nomatch = TRUE)
lis3 <- list("A" = integer(), "a b" = c(1, 2), "xxx" = integer(), "C D" = integer(),
"e f g" = c(5, 6, 7))
attr(lis3, "pattern") <- c(1, 2, 3, 4, 5)
expect_equal(ids3, lis3)
})
test_that("object2id is working with a list", {
pat <- c('a', 'a b', 'c d', 'e f g')
fps <- quanteda:::object2fixed(phrase(pat), types = letters,
valuetype = 'fixed', case_insensitive = FALSE)
lis <- list("a" = "a", "a b" = c("a", "b"), "c d" = c("c", "d"),
"e f g" = c("e", "f", "g"))
expect_equal(fps, lis)
})
test_that("object2id is working with a dictionary", {
type <- c("ab", "bb", "a a", "a b")
dict <- dictionary(list(key1 = c("a*", "b*"), key2 = c("a a", "a b")))
ids1 <- quanteda:::object2id(dict, type, valuetype = "glob", case_insensitive = FALSE)
lis1 <- list("key1" = 1, "key1" = 3, "key1" = 4, "key1" = 2)
attr(lis1, "pattern") <- c(1, 1, 1, 1)
attr(lis1, "key") <- c("key1", "key2")
expect_equal(ids1, lis1)
ids2 <- quanteda:::object2id(dict, type, valuetype = "glob", case_insensitive = FALSE,
concatenator = " ")
lis2 <- list("key1" = 1, "key1" = 3, "key1" = 4, "key1" = 2,
"key2" = 3, "key2" = 4)
attr(lis2, "pattern") <- c(1, 1, 1, 1, 3, 3)
attr(lis2, "key") <- c("key1", "key2")
expect_equal(ids2, lis2)
})
test_that("object2id is working with a dictionary", {
load("../data/collocations/coll_bi.rda")
type <- attr(coll_bi, "types")
ids1 <- quanteda:::object2id(coll_bi, type, case_insensitive = FALSE)
lis1 <- list("a b" = c(1, 2), "e g" = c(5, 6), "g h" = c(6, 7))
attr(lis1, "pattern") <- c(1, 2, 3)
expect_equal(ids1, lis1)
ids2 <- quanteda:::object2id(coll_bi, type, case_insensitive = TRUE)
lis2 <- list("a b" = c(1, 2), "e g" = c(5, 6), "g h" = c(6, 7))
attr(lis2, "pattern") <- c(1, 2, 3)
expect_equal(ids2, lis1)
})
test_that("object2id is working with empty patterns", {
col <- data.frame()
class(col) <- c("collocations", "data.frame")
pat <- list()
expect_silent(quanteda:::object2id(col, letters, "fixed", TRUE))
expect_silent(quanteda:::object2id(pat, letters, "fixed", TRUE))
})
test_that("object2id error if x is not characters", {
expect_error(
quanteda:::object2id(c(TRUE, FALSE), letters),
"The type of x must be character"
)
expect_error(
quanteda:::object2id(c(1, 2), letters),
"The type of x must be character"
)
expect_error(
quanteda:::object2id(list("a", 10), letters),
"The type of x must be character"
)
})
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.