context("Descriptive Statistics")
# my.arithmetic.mean(src.vector)
test_that("my.arithmetic.mean", {
expect_equal(my.arithmetic.mean(1:50), 25.5)
})
# my.geometric.mean(src.vector)
test_that("my.geometric.mean", {
expect_equal(my.geometric.mean(c(1,10,1000,10,1)), 10)
})
# my.harmonic.mean(src.vector)
test_that("my.harmonic.mean", {
expect_equal(my.harmonic.mean(c(1,2,4,1)), 1.4545, tolerance = 5e-05)
})
# my.mode(src.vector)
test_that("my.mode", {
expect_equal(my.mode(1:50), 1:50)
expect_equal(my.mode(c(1, 1:50)), 1)
expect_equal(my.mode(c(1, 2, 1:50)), c(1, 2))
})
# my.percentile(src.vector, quartile.fraction)
test_that("my.percentile", {
expect_equal(my.percentile(1:50, percentile.fraction = 0), 1)
expect_equal(my.percentile(1:50, percentile.fraction = 0.1), 5.1)
expect_equal(my.percentile(1:50, percentile.fraction = 0.4), 20.4)
expect_equal(my.percentile(1:50, percentile.fraction = 0.5), 25.5)
expect_equal(my.percentile(1:50, percentile.fraction = 0.6), 30.6)
expect_equal(my.percentile(1:50, percentile.fraction = 0.9), 45.9)
expect_equal(my.percentile(1:50, percentile.fraction = 1), 50)
})
# my.median(src.vector)
test_that("my.median", {
expect_equal(my.median(1:50), 25.5)
})
# my.lower.quartile(src.vector)
test_that("my.lower.quartile", {
expect_equal(my.lower.quartile(1:50), 13.25)
})
# my.upper.quartile(src.vector)
test_that("my.upper.quartile", {
expect_equal(my.upper.quartile(1:50), 37.75)
})
# my.inner.quartile.range(src.vector)
test_that("my.inner.quartile.range", {
expect_equal(my.inner.quartile.range(1:50), 24.5)
})
# my.confidence.interval
test_that("my.confidence.interval", {
set.seed(666)
nums <- rnorm(1000)
expect_equal(my.confidence.interval(nums), c(min=-0.08059,max=0.04156), tolerance = 1e-05)
})
# my.outliers(src.vector)
test_that("my.outliers", {
set.seed(666)
nums <- rnorm(1000)
expect_equal(my.outliers(nums), c(-2.943, -3.149, -2.785, -3.135, 2.745, -3.218),
tolerance = 5e-04)
})
# my.variance(src.vector)
test_that("my.variance", {
set.seed(666)
nums <- rnorm(1000)
expect_equal(my.variance(nums), var(nums))
})
# my.standard.deviation(src.vector)
test_that("my.standard.deviation", {
set.seed(666)
nums <- rnorm(1000)
expect_equal(my.standard.deviation(nums), sd(nums))
})
# my.standard.error(src.vector)
test_that("my.standard.error", {
set.seed(666)
nums <- rnorm(1000)
expect_equal(my.standard.error(nums), 0.03112, tolerance = 1e-05)
})
# my.z.score(src.vector, is.sample)
test_that("my.z.score", {
set.seed(666)
nums <- rnorm(1000) + 2
expect_equal(my.z.score(nums), (nums - mean(nums))/sd(nums)) # there is no r function for z-score
expect_equal(my.z.score(c(85, 100, 115), center = 100, scale = 15), c(-1, 0, 1))
})
# my.variance.ratio(src.vector1, src.vector2)
test_that("my.variance.ratio", {
set.seed(666)
a <- rnorm(10, 15, 2)
b <- rnorm(10, 15, 4)
ref <- var.test(a, b)
expect_equal(my.variance.ratio(a, b), ref$p.val)
})
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.