# HG changeset patch # User pmac # Date 1464766647 14400 # Node ID 8fb3d398725a5f8de3d377f72b05ca854b941e92 Uploaded diff -r 000000000000 -r 8fb3d398725a calculateZPrimeFactor.pl --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/calculateZPrimeFactor.pl Wed Jun 01 03:37:27 2016 -0400 @@ -0,0 +1,102 @@ +############################################################################### +# In summary this script calculates the z prime factor for one or more plates +# of data. +# +# Args: +# input.data.frame contains one or more columns of plate data. The first column +# must contain the well annotation ie A01, A02 etc. Each subsequent column represents +# a plate of data where the column name is the plate name. +# +# plate.conf.data.frame is a file of the following format: +# well, type(syntax must be either "poscontr" or "negcontr"), name (name of control) +# +# Returns: +# z'factor for each plate for each combination of each type of positive vs negative control. +# +# Author: gouldkate +############################################################################### + +use strict; +use warnings; +use IO::Handle; +use File::Temp qw/ tempfile tempdir /; +my $tdir = tempdir( CLEANUP => 0 ); + +# check to make sure having correct input and output files +my $usage = "usage: calculateZPrimeFactor.pl [TABULAR.in] [TABULAR.in] [TABULAR.out] \n"; +die $usage unless @ARGV == 3; + +#get the input arguments +my $plateData = $ARGV[0]; +my $plateConfig = $ARGV[1]; +my $zPrimeFactor = $ARGV[2]; + +#open the input files +open (INPUT1, "<", $plateData) || die("Could not open file $plateData \n"); +open (INPUT2, "<", $plateConfig) || die("Could not open file $plateConfig \n"); +open (OUTPUT1, ">", $zPrimeFactor) || die("Could not open file $zPrimeFactor \n"); + +#variable to store the name of the R script file +my $r_script; + +# R script to implement the calcualtion of q-values based on multiple simultaneous tests p-values +# construct an R script file and save it in a temp directory +chdir $tdir; +$r_script = "calculateZPrimeFactor.r"; + +open(Rcmd,">", $r_script) or die "Cannot open $r_script \n\n"; +print Rcmd " + #options(show.error.messages = FALSE); + input.data.frame <- read.table(\"$plateData\", head=T, sep=\"\\t\", comment=\"\"); + plate.conf.data.frame <- read.table(\"$plateConfig\", head=T, sep=\"\\t\", comment=\"\"); + + # assumed second column is type ie negcontr or poscontr and third column is name of control + negative.controls.list <- unique(plate.conf.data.frame[which (plate.conf.data.frame[,2] == \"negcontr\"),][,3]) + positive.controls.list <- unique(plate.conf.data.frame[which (plate.conf.data.frame[,2] == \"poscontr\"),][,3]) + + z.prime.factor.report.data.frame <- data.frame() + + + for (negative.control in negative.controls.list){ + for (positive.control in positive.controls.list){ + for (i in 2:length(colnames(input.data.frame))){ + + negative.control.wells <- plate.conf.data.frame[which (plate.conf.data.frame[3] == negative.control),][,1] + positive.control.wells <- plate.conf.data.frame[which (plate.conf.data.frame[3] == positive.control),][,1] + + control.duo <- paste(negative.control, positive.control, sep=\"/\") + + negative.control.values <- input.data.frame[((input.data.frame[,1] %in% negative.control.wells)&(!(is.na(input.data.frame[,i])))),][,i] + positive.control.values <- input.data.frame[((input.data.frame[,1] %in% positive.control.wells)&(!(is.na(input.data.frame[,i])))),][,i] + + if ((length(negative.control.values)==0)|(length(positive.control.values)==0)){ + z.prime.factor <- NA + } else { + if ((sum(negative.control.values)) < (sum(positive.control.values))){ + low.value.controls <- negative.control.values + high.value.controls <- positive.control.values + } else { + low.value.controls <- positive.control.values + high.value.controls <- negative.control.values + } + z.prime.factor <- round(1 - ((3 * (sd(high.value.controls, na.rm = TRUE) + sd(low.value.controls, na.rm = TRUE))/(abs(mean(high.value.controls, na.rm = TRUE) - mean(low.value.controls, na.rm = TRUE))))), 2) + } + + plate.name <- colnames(input.data.frame)[i] + z.prime.factor.current.row.data.frame <- data.frame(plate=plate.name, control.duo=control.duo, z.prime.factor=z.prime.factor, stringsAsFactors=FALSE) + z.prime.factor.report.data.frame <-rbind(z.prime.factor.report.data.frame, z.prime.factor.current.row.data.frame) + } + } + } + z.prime.factor.report.data.frame <- z.prime.factor.report.data.frame[order(z.prime.factor.report.data.frame\$control.duo),] + write.table(z.prime.factor.report.data.frame, file=\"$zPrimeFactor\", quote=F, sep=\"\\t\", row.names=F); + #eof\n"; + +close Rcmd; + +system("R --no-restore --no-save --no-readline < $r_script > $r_script.out"); + +#close the input and output files +close(OUTPUT1); +close(INPUT1); +close(INPUT2); diff -r 000000000000 -r 8fb3d398725a calculateZPrimeFactor.xml --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/calculateZPrimeFactor.xml Wed Jun 01 03:37:27 2016 -0400 @@ -0,0 +1,91 @@ + + + + calculateZPrimeFactor.pl $inputFile1 $inputFile2 $outputFile1 + + + + + + + + + + + + + + + + + + + + + + +.. class:: infomark + +**What it does** + +This program takes a linear plate table and a plate config file and then calculates the Z Prime Factors for your data. +The plate config file **must** contain the columns Well, Type and Name in that order. Further the data in column Type must be **exclude**, **negcontr** or **poscontr**. + +**Example** + +If the plates table consisted of:: + + #Well Table_1 Table_2 A01 1654 6 A02 1719 8 A03 1624 19 A04 1518 6 A05 1587 12 A06 1517 8 A07 1638 9 A08 1733 7 A09 1617 6 A10 1722 8 ... + P14 1630 6 P15 1576 6 P16 1740 7 P17 1578 6 P18 1544 6 P19 1692 6 P20 1560 6 P21 1552 6 P22 1790 7 P23 1537 6 P24 NA NA + +and the plates config was:: + + #Well Type Name A02 negcontr mock B02 negcontr mock C02 poscontr ASCIZ D02 poscontr PARP E02 negcontr NT2 F02 poscontr ASCIZ G02 poscontr PARP H02 negcontr NT2 I02 poscontr ASCIZ J02 poscontr PARP K02 negcontr NT2 L02 poscontr ASCIZ M02 poscontr PARP N02 negcontr mock O02 poscontr ASCIZ P02 negcontr NT2 A23 negcontr mock B23 negcontr mock C23 poscontr ASCIZ D23 poscontr PARP E23 negcontr NT2 F23 poscontr ASCIZ G23 poscontr PARP H23 negcontr NT2 I23 poscontr ASCIZ J23 poscontr PARP K23 negcontr NT2 L23 poscontr ASCIZ M23 poscontr PARP N23 negcontr mock O23 poscontr ASCIZ P23 negcontr NT2 + A01 exclude exclude + A24 exclude exclude + B01 exclude exclude + B24 exclude exclude + C01 exclude exclude + C24 exclude exclude + D01 exclude exclude + D24 exclude exclude + E01 exclude exclude + E24 exclude exclude + F01 exclude exclude + F24 exclude exclude + G01 exclude exclude + G24 exclude exclude + H01 exclude exclude + H24 exclude exclude + I01 exclude exclude + I24 exclude exclude + J01 exclude exclude + J24 exclude exclude + K01 exclude exclude + K24 exclude exclude + L01 exclude exclude + L24 exclude exclude + M01 exclude exclude + M24 exclude exclude + N01 exclude exclude + N24 exclude exclude + O01 exclude exclude + O24 exclude exclude + P01 exclude exclude + P24 exclude exclude + +Running the program will give the following output:: + + plate control.duo z.prime.factor + Table_1 mock/ASCIZ -64.34 + Table_2 mock/ASCIZ -Inf + Table_1 mock/PARP -10.78 + Table_2 mock/PARP -0.67 + Table_1 NT2/ASCIZ -55.97 + Table_2 NT2/ASCIZ -9.38 + Table_1 NT2/PARP -16.79 + Table_2 NT2/PARP -0.32 + + + + diff -r 000000000000 -r 8fb3d398725a test-data/150615-HR-12015-01A.linear --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test-data/150615-HR-12015-01A.linear Wed Jun 01 03:37:27 2016 -0400 @@ -0,0 +1,385 @@ +#Well Table_1 Table_2 Table_3 Table_4 Table_5 Table_6 +A01 2215 8.88 55.62 2.57 2.91 78.76 +A02 2811 8.61 57.35 1.07 2.03 63.32 +A03 2226 10.96 70.4 0.54 2.41 79.41 +A04 2528 9.35 61.59 1.66 2.14 74.9 +A05 1827 11.87 73.78 0.66 2.27 79.31 +A06 2337 8.69 58.49 1.07 1.87 62.34 +A07 2233 9.7 63.41 1.07 2.32 77.48 +A08 2462 8.48 57.39 1.06 2.07 67.32 +A09 2790 9.5 62.83 1.65 2.52 80.57 +A10 2792 9.19 60.67 1.9 2.38 73.6 +A11 2547 9.51 61.76 1.33 2.8 84.6 +A12 2629 9.47 60.94 2.09 2.42 72.34 +A13 1655 11.8 71.24 0.85 2.3 71.88 +A14 2647 8.27 52.13 2.15 2.37 72.76 +A15 2300 11.5 72.17 0.57 2.68 86.26 +A16 2030 11.71 71.63 0.74 2.66 89.03 +A17 2124 9.78 63.89 1.13 2.45 81.13 +A18 2461 9.14 59.65 1.83 2.3 77.14 +A19 2273 8.68 57.85 0.97 2.32 69.57 +A20 2281 10.62 70.58 0.7 1.98 65.3 +A21 2412 10.49 69.86 0.46 2.07 70.27 +A22 1331 10.72 69.65 0.68 1.97 61.54 +A23 2245 9.88 66.24 0.4 2.17 66.33 +A24 2037 8.13 53.26 1.42 2.06 70.05 +B01 2184 10.31 65.29 0.87 2.33 72.4 +B02 2104 9.33 57.94 3.09 2.44 79.26 +B03 1639 11.13 69.68 0.55 2.03 67.42 +B04 2467 9.84 64.33 0.77 2.03 67.95 +B05 1818 11.75 75.25 0.66 1.97 68.96 +B06 1769 9.08 57.32 2.43 2.29 69.18 +B07 1654 12.22 75.7 0.6 2.14 75.29 +B08 2199 10.04 68.58 0.73 2.43 73.55 +B09 2043 8.74 59.03 1.22 1.96 57.65 +B10 1329 11.6 73.06 0.68 2.04 58.75 +B11 2533 7.31 47.06 3.83 3.01 95.3 +B12 2712 9.31 61.98 2.06 2.49 75.2 +B13 1824 10.83 68.42 1.54 2.45 80.09 +B14 2718 7.68 49.74 4.01 2.54 81.37 +B15 2443 10.4 68.81 1.02 2.64 91.33 +B16 2061 11.82 77.1 0.39 2.53 87.74 +B17 2088 10.83 70.69 0.62 2.22 74.12 +B18 2730 10.36 70.4 0.81 2.39 78.69 +B19 2279 8.09 54.28 1.14 1.98 61.28 +B20 2371 12.37 78.28 0.25 2.23 78.36 +B21 2114 10.49 71.85 0.85 2.32 73.66 +B22 2355 9.84 66.71 0.72 2.04 64.63 +B23 1154 11.75 72.1 0.35 2.35 65.16 +B24 1646 7.49 50.12 1.82 2.11 64.74 +C01 2356 9.67 64.43 1.02 2.07 61.55 +C02 2680 10.27 67.57 0.82 2.03 60.64 +C03 2305 8.51 55.88 1.56 1.87 56.38 +C04 2510 9.55 63.55 1 2.02 58.22 +C05 2650 10.23 67.96 0.3 1.95 59.48 +C06 2918 9.76 64.98 0.69 2.21 65.35 +C07 2618 8.28 55.39 1.26 2.42 68.98 +C08 2654 9.56 65.3 1.09 2.52 75.17 +C09 2828 8.44 57.39 1.34 2.21 63.59 +C10 2877 9.48 64.75 1.32 2.59 77.38 +C11 2441 9.78 65.38 1.47 2.38 73.63 +C12 2870 7.1 47.04 3.69 2.87 88.54 +C13 3202 9.02 59.93 1.72 2.43 78.2 +C14 2619 8.63 57.43 2.1 2.93 95.11 +C15 2716 8.82 58.73 1.18 2.46 78.45 +C16 2413 10.72 71.07 0.33 2.62 84.52 +C17 2893 8.18 56.14 1.52 2.8 83.32 +C18 2669 9.82 66.62 0.67 2.26 70.88 +C19 2272 10.81 71.79 0.79 2.1 68.8 +C20 2161 9.42 63.4 1.2 2.79 79.7 +C21 2677 8.75 59.62 0.78 2.04 62.52 +C22 2406 9.91 65 0.71 2.08 68.61 +C23 2494 7.54 49.44 2.33 2.25 63.14 +C24 1760 7.85 51.99 1.82 2.15 66.92 +D01 2206 7.2 45.01 2.77 1.41 36.44 +D02 1033 10.08 62.25 1.84 2.61 77.42 +D03 1744 7.58 49.14 3.04 2.4 70.59 +D04 2579 8.78 59.83 1.2 2.12 62.68 +D05 1921 9.41 64.08 0.94 2.29 70.86 +D06 2352 9.68 63.95 2.3 2.6 79.33 +D07 1844 8.86 59.06 2.11 2.76 85.21 +D08 2831 8.45 56.55 1.77 2.62 78 +D09 1803 9.59 63.67 1.22 2.81 84.73 +D10 2531 9.03 59.9 1.78 2.64 75.75 +D11 1942 7.37 48.51 3.24 3.1 95.33 +D12 2653 9.72 66.34 1.43 2.77 84.49 +D13 2624 6.77 43.52 4.54 3.06 101.35 +D14 2777 6.68 43.03 5.47 3.36 106.95 +D15 2523 8.53 58.7 1.43 3.13 101.22 +D16 2532 9.9 66.11 0.87 2.96 89.01 +D17 2243 9.92 66.79 0.76 3.15 105.74 +D18 2653 11.31 76.1 0.45 2.67 85.7 +D19 1806 11.24 73.26 0.44 2.77 90.06 +D20 2502 11.17 74.5 0.48 2.58 76.4 +D21 2355 9.81 67.22 0.85 2.69 88.68 +D22 2036 11.95 77.65 0.29 2.54 82.78 +D23 4 19.75 100 0 1.5 74.25 +D24 2056 7.06 45.82 1.9 2.27 76.56 +E01 1953 7.89 52.02 2.36 2.09 64.14 +E02 58 10.38 67.24 6.9 2.34 81.33 +E03 1429 11 70.89 0.91 2.09 65.5 +E04 2419 9.41 61.06 1.2 2.4 69.87 +E05 2326 9.41 62.64 1.25 2.36 69.72 +E06 2281 9.32 61.03 2.59 2.88 89.16 +E07 2524 7.92 52.61 2.73 2.63 78 +E08 2444 9.17 62.19 1.51 2.8 84.21 +E09 2402 9.13 60.95 1.5 2.6 78.8 +E10 2470 9.23 60.89 1.94 2.64 78.64 +E11 2387 9.57 63.3 1.59 2.58 80.7 +E12 2812 9.54 64.76 1.21 2.61 83.54 +E13 2121 9.11 60.68 2.22 2.37 70.04 +E14 2467 8.67 58.25 1.34 2.65 87.2 +E15 1932 6.3 39.23 5.64 2.89 91.38 +E16 2207 9.54 63.57 1.54 2.63 86.13 +E17 866 11.03 69.98 0.81 2.23 71.41 +E18 1665 8.31 55.56 2.34 3.14 93.34 +E19 1668 11.19 72.96 0.66 2.3 73.16 +E20 1942 10.59 70.19 0.46 2.46 76.69 +E21 2717 10.46 69.82 0.44 2.22 72.24 +E22 1995 9.92 67.27 1.45 2.73 86.76 +E23 2686 8.98 60.65 1.19 2.33 71.8 +E24 1711 8.25 53.71 1.81 2.43 78.22 +F01 2647 8.61 56.89 1.44 2.05 56.86 +F02 1866 10.14 66.4 0.91 1.86 55.02 +F03 2327 7.3 46.41 4.08 2.04 60.29 +F04 1831 6.3 39.16 6.66 2.25 67.66 +F05 2081 8.89 57.33 2.4 2.34 70.01 +F06 2360 9.29 62.12 2.54 2.41 77.11 +F07 2465 8.21 54.36 2.92 2.59 77.73 +F08 2561 7.36 49 2.89 2.31 66.52 +F09 2242 9.81 66.77 1.43 2.47 72.7 +F10 2595 6.08 37.5 6.2 2.39 68.73 +F11 2601 8.19 54.48 3.65 2.77 96.56 +F12 2075 9.72 63.04 1.59 2.47 72.8 +F13 2452 9.25 62.11 1.51 2.66 82.33 +F14 2506 8.22 53.79 2.04 2.54 77.56 +F15 2228 8.19 53.82 2.65 2.91 103.54 +F16 2869 7.83 52.49 1.92 2.58 76.14 +F17 1322 8.78 60.14 1.97 2.52 72.6 +F18 2712 7.56 50 3.39 2.68 81.09 +F19 2623 9 60.62 1.03 2.41 73.71 +F20 2320 9.37 62.5 1.51 2.43 70.9 +F21 2528 9.04 59.53 1.15 2.2 65.33 +F22 1797 6.44 39.96 4.67 2.38 70.58 +F23 1933 10.26 67.36 0.93 2.5 71.62 +F24 1759 8.4 56.17 1.99 1.92 67.93 +G01 2715 10.83 72.08 0.59 1.98 58.65 +G02 2567 11.22 71.76 0.51 1.95 59.34 +G03 2346 8.73 57.37 1.49 2.13 61.93 +G04 2536 7.29 46.77 4.89 2.24 65.72 +G05 2157 8.33 54.38 2.23 2.35 65.99 +G06 2549 6.64 41.66 5.1 2.59 78.36 +G07 2368 9.22 61.15 1.35 2.41 73.63 +G08 2798 9.61 63.44 1.18 2.46 72.8 +G09 2595 8.97 59.73 1.93 2.4 68.47 +G10 3309 6.57 42.16 3.84 2.34 62.92 +G11 2701 7.84 53.05 2.3 2.46 68.96 +G12 2916 7.37 49.04 3.19 2.61 72.96 +G13 2664 9.26 63.48 1.73 2.88 88.03 +G14 2998 7.58 51.17 2.94 2.6 75.25 +G15 2257 9.19 63.14 1.2 2.49 71.58 +G16 2850 10.29 70.53 1.09 2.33 71.99 +G17 2559 7.88 52.25 2.34 2.67 83.35 +G18 2684 8.49 55.48 2.72 2.69 83.61 +G19 2852 7.68 50.25 3.54 2.78 87.58 +G20 2779 7.11 45.88 3.17 2.58 73.2 +G21 2448 9.83 67.28 0.69 2.52 77.41 +G22 2741 7.4 48.23 3.1 2.42 68.04 +G23 2945 10.08 70.12 0.75 2.52 78.27 +G24 1740 6.25 38.91 3.33 2.19 65.21 +H01 2214 12.71 78.73 0.36 2.1 68.06 +H02 11 19.73 90.91 0 2.18 67.36 +H03 1344 10.4 65.77 1.86 2.36 69.92 +H04 1937 7.72 49.3 3.1 2.42 70.48 +H05 2130 9.08 60.19 1.41 2.39 67.18 +H06 2637 8.69 56.16 1.71 2.34 68.97 +H07 2278 10.21 67.08 1.14 2.85 85.95 +H08 2020 10.78 72.62 1.09 2.56 74.15 +H09 1780 10.32 67.25 1.91 3.05 82.88 +H10 2262 7.84 52.43 2.25 3.01 78.92 +H11 2130 12.63 80.47 0.47 3.17 96.52 +H12 2404 9.57 63.89 1.87 3.07 87.48 +H13 1872 10.9 70.78 1.23 3.15 91.34 +H14 2598 9.23 63.01 1.31 2.65 76.86 +H15 2164 10.57 72.87 1.06 2.74 78.64 +H16 2475 9.77 66.87 0.73 2.86 90.95 +H17 1783 11.15 72.74 0.67 2.97 88.69 +H18 2114 9.08 60.83 1.32 2.87 84.31 +H19 2621 7.59 49.83 3.13 2.69 81.29 +H20 2623 7.95 53.49 2.06 2.34 68.36 +H21 1954 10.2 66.27 1.64 2.5 78.56 +H22 2356 9.53 62.82 1.57 3.31 99.15 +H23 8 26 100 0 3.25 139 +H24 1421 7.88 47.64 4.93 1.98 78.52 +I01 2071 12.39 78.17 0.43 2.11 61.97 +I02 1366 12.04 75.62 0.88 2.36 65.33 +I03 1769 9.91 63.2 1.19 2.13 56.36 +I04 2389 10.75 70.24 0.63 2.28 65.29 +I05 1983 8 51.49 2.57 2.69 74.38 +I06 2209 9.97 64.46 1.45 2.9 80.24 +I07 2524 9.56 62.08 1.78 3.01 88.14 +I08 1961 11.84 75.68 0.66 3.23 88.78 +I09 1925 11.12 71.27 0.88 2.82 78.49 +I10 2364 10.85 69.42 0.89 3.17 89.68 +I11 1809 12.46 77.34 0.44 2.66 76.47 +I12 2387 10.95 70.38 0.88 3.15 87.18 +I13 2530 12.5 78.42 0.87 3.04 94.74 +I14 2086 12.23 75.6 0.91 3.47 101.93 +I15 2587 10.9 72.59 0.7 2.84 85.07 +I16 2480 12.24 78.15 0.44 3.45 108.16 +I17 1770 12.3 78.25 0.73 3.12 95.09 +I18 1964 8.3 55.09 2.9 3.32 96.99 +I19 1969 10.6 69.78 1.12 3.11 95.42 +I20 2330 8.19 53.22 2.1 3.43 100.06 +I21 1922 8.76 58.27 1.82 3.08 90.8 +I22 2062 11.61 75.12 0.58 3.06 95.76 +I23 2446 9.95 66.39 1.19 2.99 83.27 +I24 1457 9.09 57.79 2.2 3.49 102.71 +J01 1967 13.45 80.22 0.31 2.06 62 +J02 1954 11.02 71.65 1.23 2.08 57.26 +J03 1402 10.14 67.05 0.86 1.75 48.25 +J04 1316 10.69 70.82 0.68 2.08 59.11 +J05 1784 7 45.8 4.37 2.09 58.3 +J06 2557 7.78 52.33 2.66 2.73 77.66 +J07 1753 10.05 66.29 1.43 2.44 71.51 +J08 1844 11.57 75.43 0.98 2.59 73.92 +J09 1670 9.2 61.44 0.78 2.5 65.14 +J10 2427 9.55 64.19 1.03 2.68 75.03 +J11 2011 11.93 77.03 0.2 2.55 73.74 +J12 1973 11.51 74.71 0.91 2.92 82.11 +J13 2276 11.43 74.74 0.66 3 89.39 +J14 2088 11.24 74.47 0.67 2.94 87.12 +J15 2476 10.48 69.35 0.65 2.77 79.58 +J16 2395 10.95 71.9 0.92 3.22 94.31 +J17 2127 11.9 75.6 0.52 2.8 87.35 +J18 2341 9.92 66.21 0.94 3.11 93.03 +J19 1800 13.06 81.61 0.61 2.54 82.49 +J20 2368 8.52 56.88 1.56 2.67 79.25 +J21 2387 7.99 50.98 2.51 2.99 88.09 +J22 2309 10.5 70.12 0.52 2.64 80.93 +J23 822 8.44 55.6 2.68 3.41 88.31 +J24 1434 11.4 69.67 0.49 2.56 75.84 +K01 2652 8.11 53.96 1.58 1.72 47.85 +K02 209 14.67 84.69 0.96 1.77 51.87 +K03 2838 6.24 38.51 4.33 1.85 52.13 +K04 3001 9.71 65.98 1.03 1.95 56.69 +K05 2873 7.73 52.52 2.89 1.97 54.93 +K06 2327 7.32 47.53 3.52 2.19 61.63 +K07 2870 7.96 54.01 2.37 2.14 62.09 +K08 2914 7.98 53.98 2.16 2.34 64.88 +K09 3239 8.13 55.26 1.82 2.2 59.7 +K10 2663 9.31 62.04 1.05 2.27 60.76 +K11 3009 7.53 49.52 1.5 2.28 62.38 +K12 2521 9.74 65.01 1.19 2.64 71.55 +K13 2470 8.63 58.14 1.74 2.43 68.82 +K14 2648 11.19 73.3 0.6 2.69 79.57 +K15 2692 8.76 58.77 1.63 2.18 64.46 +K16 2915 10.94 72.45 0.51 2.83 83.73 +K17 2653 9.45 64.87 1.39 2.41 73.68 +K18 2661 8.63 57.31 2.37 3.24 86.86 +K19 2647 7.55 49.34 2.34 2.74 82.51 +K20 2221 10.27 69.29 1.44 3.22 93.3 +K21 1987 9.5 63.56 1.56 2.41 70.16 +K22 2557 9.32 60.62 2.11 3.64 108.95 +K23 2367 9.79 65.82 1.31 2.82 81.75 +K24 1498 9.08 58.88 1.94 2.74 86.15 +L01 2370 10.08 67.26 0.97 1.89 53.56 +L02 2240 10.54 68.53 1.12 1.89 56.19 +L03 1355 10.4 68.34 1.11 1.71 48.94 +L04 2608 10.09 67.75 1 2.14 61.59 +L05 2088 8.34 54.21 3.21 2.08 58.54 +L06 2332 9.22 61.62 1.97 2.29 66.29 +L07 1528 9.21 59.95 1.7 2.06 58.84 +L08 2352 9.47 63.95 1.66 2.14 60.65 +L09 2595 9.2 62.62 0.66 2.1 56.05 +L10 2135 8.54 55.64 1.73 2.23 57.12 +L11 2537 8.28 55.54 1.3 2.41 65.07 +L12 2348 11.87 76.11 0.38 2.63 78.84 +L13 2197 9.55 63.63 1.14 2.37 67.98 +L14 2411 10.23 68.56 0.91 2.61 76.71 +L15 2815 8.27 54.03 2.1 2.26 64.29 +L16 2498 8.88 58.93 1.44 2.24 64.05 +L17 2493 9.81 67.19 0.96 2.22 67.86 +L18 2709 8.11 53.78 2.03 2.2 60.62 +L19 2416 8.75 59.89 1.28 2.54 75.84 +L20 2081 10.65 69.1 0.62 2.25 72.08 +L21 2376 10.08 68.9 0.67 2.33 72.37 +L22 1528 7.56 48.3 3.99 2.6 77.79 +L23 2344 12.22 77.05 0.34 2.26 68.61 +L24 1646 9.04 58.81 1.7 1.8 55.4 +M01 2012 9.29 60.04 1.79 2.3 65.75 +M02 1813 11.41 72.31 0.77 2.2 66.88 +M03 1962 9.57 60.14 2.14 2.43 73.04 +M04 1816 11.38 72.91 0.88 2.07 66.33 +M05 2155 8.49 55.96 3.62 2.4 76.36 +M06 1993 11.24 75.01 0.85 1.94 63.19 +M07 2175 10.08 64.69 1.52 2.39 70.2 +M08 2309 10.12 67.43 1.17 2.16 65.42 +M09 2005 8.1 53.27 2.49 2.33 64.79 +M10 2786 9.29 62.1 1.4 2.45 66.01 +M11 2191 10.62 70.61 0.46 2.43 69.75 +M12 2571 10.68 70.48 0.51 2.23 66.84 +M13 2492 10.03 65.85 0.88 2.33 70.78 +M14 2326 10.11 66.38 0.86 2.51 73.36 +M15 2134 9.57 63.96 1.73 2.41 70.35 +M16 2637 9.38 63.56 1.63 2.36 68.77 +M17 2058 9.33 60.74 1.65 2.36 68.1 +M18 2428 9.96 65.98 0.66 2.42 72.35 +M19 1955 10.45 67.88 0.82 1.96 58.52 +M20 2349 8.09 53.34 2.68 2.76 83.89 +M21 2413 9.06 60.92 1.41 2.12 66.1 +M22 2398 10.66 71.18 0.75 2.4 73.38 +M23 2369 9.28 60.57 1.1 2.22 65.44 +M24 1753 7.99 52.48 2 2.31 73.49 +N01 2349 9.7 62.96 1.23 2 54.24 +N02 1100 9.78 65.64 1.91 2.11 59.64 +N03 1959 11.19 70.7 1.07 2.13 63.27 +N04 2547 9.07 60.35 1.53 2.17 60.21 +N05 1861 6.58 41.91 5.59 2.15 58.81 +N06 2667 7.91 50.69 3.11 2.25 62.86 +N07 2841 7.86 52.34 1.9 2.25 59.96 +N08 2090 9.2 60.53 2.11 2.45 68.68 +N09 2292 10.12 67.32 0.96 2.14 56.57 +N10 1988 8.68 57.8 1.51 2.37 60.56 +N11 1850 9.76 63.3 1.08 2.16 58.67 +N12 2692 9.25 62.33 0.74 2.27 62.41 +N13 2556 8.4 54.3 2.58 2.69 77.77 +N14 2718 6.73 42.9 3.42 2.63 70.67 +N15 1790 10.56 70.06 0.78 2.5 71.66 +N16 2357 10.09 68.65 0.89 2.38 71.39 +N17 1855 11.31 73.75 0.65 2.26 69.82 +N18 2912 9.07 61.81 1.17 2.43 70.12 +N19 2774 8.88 59.7 1.95 2.7 80.08 +N20 2244 7.66 51.16 3.03 2.61 72.69 +N21 2607 6.2 38.59 4.99 2.53 74.74 +N22 1606 10.13 66.63 1 2.57 75.63 +N23 2548 10.1 69.31 0.82 2.3 69.19 +N24 1885 8.58 57.93 1.86 2.42 76.91 +O01 2211 7.97 50.11 4.84 2.51 75.51 +O02 1992 10.62 66.16 2.11 1.97 57.64 +O03 2127 9.32 59.43 3.57 2.23 66.12 +O04 2209 11.3 71.57 0.91 2.08 62.99 +O05 2659 9.12 61.34 1.32 1.85 52.69 +O06 2635 8.44 54.99 3.19 2.32 68.44 +O07 2715 9.04 59.08 1.73 2.07 59.75 +O08 2380 8.6 58.24 1.39 2.08 54.5 +O09 2660 9.1 60.45 1.39 2.11 57.22 +O10 2754 9.46 63.62 1.6 2.16 59.51 +O11 2441 10.22 66.41 1.31 2.14 62.51 +O12 2149 10.7 68.96 1.07 1.98 56.79 +O13 1852 9.47 60.21 2 2.11 62.8 +O14 2402 10.61 68.53 0.67 2.25 70.24 +O15 2391 10.34 69.97 1.21 2.42 77.32 +O16 2544 9.71 62.62 1.42 2.23 65.64 +O17 2212 9.12 60.53 1.18 2.18 65.33 +O18 2282 8.64 57.27 2.76 2.5 70.41 +O19 2386 9.37 63.45 1.22 1.86 55.53 +O20 1851 8.95 59.75 1.24 1.93 53.9 +O21 2400 8.57 56.79 2.29 2.2 66.64 +O22 2414 9.52 63.92 1.33 2.3 66.6 +O23 2636 8.44 55.54 2.2 2.27 64.76 +O24 2115 6.49 40.28 4.4 2.68 77.69 +P01 1588 4.5 24.5 12.59 2.79 86.44 +P02 2169 5.6 32.6 6.22 2.01 52.67 +P03 1924 7.28 47.97 2.86 1.75 47.57 +P04 2189 7.91 50.57 2.7 1.82 51.07 +P05 1911 8.01 52.8 1.88 2.06 51.74 +P06 2083 7.87 51.32 2.4 1.85 48.44 +P07 2465 4.52 23.85 11.03 2.38 67.92 +P08 2061 6.89 43.81 3.93 2.19 57.17 +P09 2394 8.75 56.27 1.71 1.8 48.47 +P10 2095 8.88 59 1.53 2.14 56.81 +P11 2744 8.51 57.14 1.38 2.14 59.91 +P12 2863 8.12 55.4 1.5 1.96 52.69 +P13 2294 8.23 55.32 1.96 2.09 55.48 +P14 2386 7.09 45.52 2.1 2.21 60.22 +P15 1721 8.98 61.13 1.57 2.24 61.47 +P16 2550 6.79 43.37 2.59 2.23 60.22 +P17 2533 7.36 48.28 2.09 2.3 65.8 +P18 2539 8.56 57.74 1.61 2.16 59.73 +P19 2234 7.78 50.31 2.69 1.92 53.58 +P20 2680 8.03 53.66 1.34 2 56.58 +P21 2361 9.24 61.54 0.93 1.99 57.69 +P22 2209 8.39 56.81 1.54 1.74 49.86 +P23 2365 6.57 41.31 4.02 2.1 56.17 +P24 1448 2.74 10.29 26.1 1.98 67.63 diff -r 000000000000 -r 8fb3d398725a test-data/calc_z_prime.tabular --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test-data/calc_z_prime.tabular Wed Jun 01 03:37:27 2016 -0400 @@ -0,0 +1,49 @@ +plate control.duo z.prime.factor +Table_1 mock/Hamp -21.87 +Table_2 mock/Hamp -17.1 +Table_3 mock/Hamp -11.02 +Table_4 mock/Hamp -9.96 +Table_5 mock/Hamp -6.74 +Table_6 mock/Hamp -4.12 +Table_1 mock/MPEG1 -6.17 +Table_2 mock/MPEG1 -10.38 +Table_3 mock/MPEG1 -5.13 +Table_4 mock/MPEG1 0.21 +Table_5 mock/MPEG1 -12.56 +Table_6 mock/MPEG1 -5.8 +Table_1 mock/PLK -1.34 +Table_2 mock/PLK -9 +Table_3 mock/PLK -6.86 +Table_4 mock/PLK -2.82 +Table_5 mock/PLK -3.55 +Table_6 mock/PLK -3.6 +Table_1 mock/TOX 0.28 +Table_2 mock/TOX -1.6 +Table_3 mock/TOX -1.28 +Table_4 mock/TOX -14.8 +Table_5 mock/TOX -29.08 +Table_6 mock/TOX -4.33 +Table_1 OTP/Hamp -17.48 +Table_2 OTP/Hamp -19.11 +Table_3 OTP/Hamp -14.19 +Table_4 OTP/Hamp -5.35 +Table_5 OTP/Hamp -17.35 +Table_6 OTP/Hamp -9.95 +Table_1 OTP/MPEG1 -5.13 +Table_2 OTP/MPEG1 -572.82 +Table_3 OTP/MPEG1 -56.41 +Table_4 OTP/MPEG1 -8.07 +Table_5 OTP/MPEG1 -69.32 +Table_6 OTP/MPEG1 -35.84 +Table_1 OTP/PLK -1.03 +Table_2 OTP/PLK -37.38 +Table_3 OTP/PLK -138.48 +Table_4 OTP/PLK -10.57 +Table_5 OTP/PLK -6.62 +Table_6 OTP/PLK -10.23 +Table_1 OTP/TOX 0.42 +Table_2 OTP/TOX -1.75 +Table_3 OTP/TOX -1.96 +Table_4 OTP/TOX -20.12 +Table_5 OTP/TOX -61.09 +Table_6 OTP/TOX -6.57 diff -r 000000000000 -r 8fb3d398725a test-data/plate_config.txt --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test-data/plate_config.txt Wed Jun 01 03:37:27 2016 -0400 @@ -0,0 +1,1 @@ +well type name geneID B02 poscontr Hamp 57817 C02 negcontr OTP -1 D02 poscontr PLK 5347 E02 poscontr TOX -1 F02 negcontr OTP -1 G02 poscontr MPEG1 17476 H02 poscontr TOX -1 I02 poscontr PLK 5347 J02 negcontr OTP -1 K02 poscontr TOX -1 L02 poscontr Hamp 57817 M02 negcontr OTP -1 N02 poscontr PLK 5347 O02 negcontr mock -1 B23 poscontr PLK 5347 C23 negcontr OTP -1 D23 poscontr TOX -1 E23 negcontr OTP -1 F23 poscontr PLK 5347 G23 poscontr MPEG1 17476 H23 poscontr TOX -1 I23 negcontr OTP -1 J23 poscontr PLK 5347 K23 poscontr Hamp 57817 L23 negcontr OTP -1 M23 poscontr MPEG1 17476 N23 negcontr OTP -1 O23 negcontr mock -1 \ No newline at end of file