{"id":21280603,"url":"https://github.com/borgwardtlab/sinimin","last_synced_at":"2025-08-21T00:09:46.551Z","repository":{"id":69455302,"uuid":"195260468","full_name":"BorgwardtLab/SiNIMin","owner":"BorgwardtLab","description":"Significant Network Interval Mining","archived":false,"fork":false,"pushed_at":"2020-08-21T09:29:47.000Z","size":3087,"stargazers_count":7,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-07-11T11:54:35.963Z","etag":null,"topics":["interactions","networks","statistical-testing"],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/BorgwardtLab.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2019-07-04T14:52:57.000Z","updated_at":"2025-02-10T08:15:56.000Z","dependencies_parsed_at":"2023-03-11T06:07:09.586Z","dependency_job_id":null,"html_url":"https://github.com/BorgwardtLab/SiNIMin","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/BorgwardtLab/SiNIMin","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BorgwardtLab%2FSiNIMin","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BorgwardtLab%2FSiNIMin/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BorgwardtLab%2FSiNIMin/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BorgwardtLab%2FSiNIMin/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/BorgwardtLab","download_url":"https://codeload.github.com/BorgwardtLab/SiNIMin/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BorgwardtLab%2FSiNIMin/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":271405572,"owners_count":24753799,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-20T02:00:09.606Z","response_time":69,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["interactions","networks","statistical-testing"],"created_at":"2024-11-21T10:37:19.052Z","updated_at":"2025-08-21T00:09:46.533Z","avatar_url":"https://github.com/BorgwardtLab.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# SiNIMin\n\nThis repository contains the code for the _\u003cb\u003eSi\u003c/b\u003egnificant \u003cb\u003eN\u003c/b\u003eetwork \u003cb\u003eI\u003c/b\u003enterval \u003cb\u003eMin\u003c/b\u003eing_ approach, short SiNIMin, and its permutation-testing based counterpart SiNIMin-WY. The methods are described in _Network-guided detection of candidate intervals that exhibit genetic heterogeneity_ (under review).\n\n\n## Data formatting\n\nAssuming we are given a data set of n samples with d binary features. An example of all files can be found in the folder _examples_.\n\nThe method requires the following input:\n  1. __data file__ with d rows corresponding to features (important: the features are assumed to follow a natural ordering, such as genetic variants by their position on the DNA ) and n columns, corresponding to n samples. The values are supposed to be binary.\n  2. __label file__ with n rows, that contains the binary phenotype of the n samples. Samples are assumed to be in same ordering as in data file.\n  3. __feature file__ d rows, that contains the name of the d features. Samples are assumed to be in same ordering as in data file.\n  4.  __edge file__, where each row contains the names of the nodes adjacent to the edge in tab-separated format.\n  5. __mapping file__, linking the features to the nodes in the network. Each row contains the name of the node followed by a white-space separated list of feature names.\n  6. __target FWER__, the target family wise error rate, default: 0.05.\n  7. __covariate file__ (optional) with n rows. Each row contains the index of the class of the corresponding sample. Samples are assumed to be in same ordering as in data file.\n  \n  \n\n## Usage information\n\n### Compilation (manual)\n\nNote that the package relies on the Eigen-library. This library has to\nbe linked upon re-compilation of the method.  OpenMP is used for\nparallelization of permutation testing.\n\nWe provide a `Makefile` that may have to be adjusted for the compilation\nto work. You can compile the program using the following steps:\n\n    $ cd SiNIMin/C\n    $ make\n\nIf the compile step does not work, please try adjusting the compiler\nsettings in the `Makefile` or use another compilation method.\n\n### Compilation (CMake)\n\nAnother way to compile the package involves compiling it using `cmake`.\nFor Mac OS X, we recommend installing the following packages using\n[Homebrew](https://brew.sh):\n\n    $ brew install cmake gcc eigen\n\nAfter cloning this repository, the following steps are required to\ncompile the package:\n\n    $ cd SiNIMin/C\n    $ mkdir build\n    $ cd build\n    $ cmake -DCMAKE_CXX_COMPILER=g++-9 ../\n    $ make\n\nOptionally, the compiler version can also be changed if a more recent\ncompiler is present. Compiling the package with the Apple version of the\n`clang` compiler (which is sometimes confusingly also present as `g++`\nin the system) currently does *not* work.\n\nHaving compiled the package, it can optionally be installed by issuing\n\n    $ make install\n\nfrom the `build` directory created above.\n\n### Installation using Homebrew (Mac OS X )\n\nFor Mac OS X, we recommend installing the package using the [Homebrew](https://brew.sh)\npackage manager:\n\n    $ brew install --cc=gcc BorgwardtLab/mlcb/sinimin\n\nAfterwards, the package can be automatically used on the command-line.\n\n### Example usage\n\nExamples on how to execute the methods SiNIMin and SiNIMin-WY can be found in _examples/runs_ with corresponding data in _examples/data_.\nThe executable for both methods is called `sinimin` and can be found in _SiNIMin/compiled_.\n\n```bash\n./sinimin \\\n  -i \"${data_file}\" \\\n  -l \"${labels_file}\" \\\n  -c \"${covariate_file}\" \\\n  -m \"${mapping_file}\" \\\n  -e \"${edge_file}\" \\\n  -s \"${feature_file}\" \\\n  -f 0.05 \\\n  -o \"${output_prefix}\" \\\n ```\nThere exist additional flags that can be set, namely:\n```bash\n  -d ${maxlen} \\\n  -n ${number_threads} \\\n  -p ${number_permutations} \n```\n\nThe `-d` flag toggles the maximum length of intervals to be tested. For example, if `d` is set to 1, only interactions between single features are tested.\nThe `-p` flag toggles the number of permutations. If this flag is set, SiNIMin-WY is executed, i.e. Westfall-Young permutations are used to estimate family-wise error rates.\nThe `-n` flag sets the number of processes. This parameter only results in a speed-up for permutation testing. `sinimin` uses OMP to parallelize.\n\n# Help\n\nIf you have questions concerning SiNIMin or you encounter problems when\ntrying to build the tool under your own system, please open an issue in\n[the issue tracker](https://github.com/BorgwardtLab/SiNIMin/issues). Try to\ndescribe the issue in sufficient detail in order to make it possible for\nus to help you.\n\n# Contact\nanja.gumpinger@bsse.ethz.ch\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fborgwardtlab%2Fsinimin","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fborgwardtlab%2Fsinimin","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fborgwardtlab%2Fsinimin/lists"}