Data and code for: Shared C-type lectin signal in two canid selection systems with a separate focal epidermal-barrier signal in the domestic cat
收藏资源简介:
# Shared C-type lectin signal in two canid selection systems — data and code This deposit accompanies a manuscript **in preparation** for submission to *Biology Letters*. It contains every derived table, the production permutation engine, its unit tests and the complete permutation output needed to regenerate the reported numbers. Raw sequencing reads are not redistributed; they are public and are cited by accession in `docs/data_sources.md`. ## What was computed * 50-kb non-overlapping windows and candidate selection blocks (Z of heterozygosity <= -4 or Z of FST >= 4, gaps <= 50 kb merged) were rebuilt from public data for four domestication-related contrasts: domestic cat (6 breed pools vs 1 wildcat pool), dog (6 domestic vs 4 wolves), farm fox (10 tame vs 9 aggressive after one exclusion) and goat (2,608 domestic vs 7 bezoar). * A 1,027-gene matrisome panel was mapped by orthologue symbol to each assembly. * Enrichment uses a window-level 2x2 table. The permutation rotates, for every contiguous 50-kb segment, the complete block set by one common integer window offset, splitting blocks at segment boundaries rather than dropping them, so block lengths, block numbers and physical spacing are preserved. The test statistic is the number of panel windows covered by blocks, which is monotone in the enrichment direction and yields p = 1 when no panel window falls inside a block. * Nine window-level class tests (3 systems x 3 classes) and one prespecified joint canid test were run. ## Layout ``` data/windows_50kb/ per-window group heterozygosity and Fst (4 systems) data/blocks/ candidate selection blocks data/panels/ the matrisome panels and the nine class panels actually used data/results_prod/ one JSON per analysis: 2x2 counts, OR, 95% CI, permutation p, null summary, seed, diagnostics data/nulls/ complete permutation null arrays for the three class tests with hits and for the joint test data/nulls_superseded/ null arrays from the earlier per-system implementation, kept for provenance only code/ production engine, unit tests, joint test, driver script docs/ frozen parameters, environment, data sources ``` ## Reproducing the numbers ``` export DATA_ROOT="$PWD" # after unpacking export PYTHON=python3 python code/test_enrich_prod.py # seven unit tests, no data needed bash code/run_all_analyses.sh # 14 analyses + joint test, ~6 minutes on 24 cores ``` Seeds are fixed (20263024 for cat, dog and fox; 20262024 for goat) and are written into every output JSON. ## Column dictionary * `a` panel windows inside blocks; `b` panel windows outside blocks; `c` other windows inside blocks; `d` other windows outside blocks. `a + b + c + d` equals the windows analysed. * `OR`, `OR_lo`, `OR_hi`: descriptive odds ratio and Woolf 95% CI on the unadjusted 2x2. When `a = 0` the ratio is not estimable and is reported as 0 with no interval. * `p`: one-sided permutation p = (1 + #{T_null >= T_obs}) / (1 + B), B = 10,000. * `null_distinct`: number of distinct null statistics (a discreteness diagnostic). * `n_segments`, `missing_slots`, `max_gap_bp`, `static_windows`: geometry of the contiguous 50-kb segments used for rotation, the 50-kb slots absent from the genome, the largest physical gap, and the number of single-window segments that cannot rotate. ## Licence Data CC BY 4.0, code MIT. See the two licence files.



