# PCA func expected values pca_input <- as.matrix(iris[, 1:4]) rownames(pca_input) <- paste("contig", 1:150) contignames <- c( "contig 1", "contig 2", "contig 3", "contig 4", "contig 5", "contig 6", "contig 7", "contig 8", "contig 9", "contig 10", "contig 11", "contig 12", "contig 13", "contig 14", "contig 15", "contig 16", "contig 17", "contig 18", "contig 19", "contig 20", "contig 21", "contig 22", "contig 23", "contig 24", "contig 25", "contig 26", "contig 27", "contig 28", "contig 29", "contig 30", "contig 31", "contig 32", "contig 33", "contig 34", "contig 35", "contig 36", "contig 37", "contig 38", "contig 39", "contig 40", "contig 41", "contig 42", "contig 43", "contig 44", "contig 45", "contig 46", "contig 47", "contig 48", "contig 49", "contig 50", "contig 51", "contig 52", "contig 53", "contig 54", "contig 55", "contig 56", "contig 57", "contig 58", "contig 59", "contig 60", "contig 61", "contig 62", "contig 63", "contig 64", "contig 65", "contig 66", "contig 67", "contig 68", "contig 69", "contig 70", "contig 71", "contig 72", "contig 73", "contig 74", "contig 75", "contig 76", "contig 77", "contig 78", "contig 79", "contig 80", "contig 81", "contig 82", "contig 83", "contig 84", "contig 85", "contig 86", "contig 87", "contig 88", "contig 89", "contig 90", "contig 91", "contig 92", "contig 93", "contig 94", "contig 95", "contig 96", "contig 97", "contig 98", "contig 99", "contig 100", "contig 101", "contig 102", "contig 103", "contig 104", "contig 105", "contig 106", "contig 107", "contig 108", "contig 109", "contig 110", "contig 111", "contig 112", "contig 113", "contig 114", "contig 115", "contig 116", "contig 117", "contig 118", "contig 119", "contig 120", "contig 121", "contig 122", "contig 123", "contig 124", "contig 125", "contig 126", "contig 127", "contig 128", "contig 129", "contig 130", "contig 131", "contig 132", "contig 133", "contig 134", "contig 135", "contig 136", "contig 137", "contig 138", "contig 139", "contig 140", "contig 141", "contig 142", "contig 143", "contig 144", "contig 145", "contig 146", "contig 147", "contig 148", "contig 149", "contig 150" ) expected_pca_output <- structure(list(contig = contignames, PC1 = c( -2.68412562596952, -2.71414168729432, -2.88899056905929, -2.74534285564141, -2.72871653655453, -2.28085963284449, -2.8205377507406, -2.62614497314663, -2.88638273178055, -2.67275579782095, -2.50694709065185, -2.61275523090872, -2.78610926618801, -3.22380374386565, -2.64475038994203, -2.38603903353113, -2.62352787522442, -2.64829670625438, -2.19982032361758, -2.58798639987876, -2.31025621524252, -2.54370522875715, -3.21593941564861, -2.3027331822262, -2.35575404912377, -2.50666890692582, -2.46882007312133, -2.56231990619601, -2.63953471538454, -2.63198938727434, -2.58739847668935, -2.40993249700217, -2.64886233434991, -2.59873674910058, -2.63692687810579, -2.86624165211867, -2.62523804985037, -2.80068411544822, -2.98050204378199, -2.59000631396809, -2.7701024260279, -2.8493687050431, -2.9974065465949, -2.40561448509748, -2.20948923778367, -2.7144514267577, -2.53814825899894, -2.83946216764285, -2.54308574983039, -2.70335978233516, 1.28482568885835, 0.932488532312321, 1.4643023219914, 0.183317719958374, 1.08810325771167, 0.641669084258081, 1.09506066263245, -0.749122669829653, 1.04413182605344, -0.00874540408289192, -0.507840883835322, 0.511698557447601, 0.264976508112049, 0.984934510470893, -0.173925371681764, 0.92786078094425, 0.660283761696941, 0.236104993317675, 0.944733728019816, 0.0452269762987033, 1.11628317735005, 0.35788841799731, 1.29818387535892, 0.92172892244704, 0.714853325911414, 0.90017437317217, 1.33202443672209, 1.55780215506607, 0.813290649817545, -0.305583778024306, -0.06812649206836, -0.189622472378498, 0.136428711558018, 1.38002643591551, 0.588006443339868, 0.806858312500416, 1.22069088244436, 0.815095235766602, 0.245957679886696, 0.16641321714546, 0.464800288403783, 0.890815198469453, 0.230548023559459, -0.70453175924466, 0.356981494701051, 0.331934479945062, 0.376215651066674, 0.642576007554341, -0.906469864948832, 0.299000841878147, 2.53119272780363, 1.41523587670391, 2.61667601599569, 1.97153105304344, 2.35000592004464, 3.39703873605326, 0.521232243909778, 2.93258706899369, 2.32122881657338, 2.91675096678608, 1.66177415363653, 1.80340195296509, 2.16559179608015, 1.34616357945845, 1.58592822387322, 1.90445637479343, 1.94968905939907, 3.48705536429028, 3.79564542207288, 1.30079171263766, 2.42781791306605, 1.19900110546556, 3.49992003892454, 1.38876613169147, 2.27543050387221, 2.61409047381083, 1.25850816051149, 1.29113205911502, 2.1236087227739, 2.38800301600347, 2.84167277810387, 3.2306736614321, 2.15943764248905, 1.44416124232951, 1.78129481004511, 3.07649993168719, 2.14424331430208, 1.90509814881408, 1.1693263393415, 2.10761114325724, 2.3141547052356, 1.9222678009026, 1.41523587670391, 2.56301337507748, 2.41874618273283, 1.94410979454697, 1.52716661481452, 1.76434571704443, 1.90094161421843, 1.39018886194792 )), class = "data.frame", row.names = contignames) test_that("PCA func does it's job correctly", { expect_equal(contig_pca(pca_input), expected_pca_output) })