summaryrefslogtreecommitdiff
path: root/gnu/packages/bioinformatics.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/bioinformatics.scm')
-rw-r--r--gnu/packages/bioinformatics.scm110
1 files changed, 94 insertions, 16 deletions
diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm
index c7836f173e..7175ecf41d 100644
--- a/gnu/packages/bioinformatics.scm
+++ b/gnu/packages/bioinformatics.scm
@@ -34,6 +34,7 @@
#:use-module (gnu packages file)
#:use-module (gnu packages java)
#:use-module (gnu packages linux)
+ #:use-module (gnu packages machine-learning)
#:use-module (gnu packages maths)
#:use-module (gnu packages ncurses)
#:use-module (gnu packages perl)
@@ -438,6 +439,76 @@ multiple sequence alignments.")
"CLIPper is a tool to define peaks in CLIP-seq datasets.")
(license license:gpl2)))
+(define-public couger
+ (package
+ (name "couger")
+ (version "1.8.2")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append
+ "http://couger.oit.duke.edu/static/assets/COUGER"
+ version ".zip"))
+ (sha256
+ (base32
+ "04p2b14nmhzxw5h72mpzdhalv21bx4w9b87z0wpw0xzxpysyncmq"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:tests? #f
+ #:phases
+ (modify-phases %standard-phases
+ (delete 'configure)
+ (delete 'build)
+ (replace
+ 'install
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let ((out (assoc-ref outputs "out")))
+ (copy-recursively "src" (string-append out "/src"))
+ (mkdir (string-append out "/bin"))
+ ;; Add "src" directory to module lookup path.
+ (substitute* "couger"
+ (("from argparse")
+ (string-append "import sys\nsys.path.append(\""
+ out "\")\nfrom argparse")))
+ (copy-file "couger" (string-append out "/bin/couger")))
+ #t))
+ (add-after
+ 'install 'wrap-program
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ ;; Make sure 'couger' runs with the correct PYTHONPATH.
+ (let* ((out (assoc-ref outputs "out"))
+ (path (getenv "PYTHONPATH")))
+ (wrap-program (string-append out "/bin/couger")
+ `("PYTHONPATH" ":" prefix (,path))))
+ #t)))))
+ (inputs
+ `(("python" ,python-2)
+ ("python2-pillow" ,python2-pillow)
+ ("python2-numpy" ,python2-numpy)
+ ("python2-scipy" ,python2-scipy)
+ ("python2-matplotlib" ,python2-matplotlib)))
+ (propagated-inputs
+ `(("r" ,r)
+ ("libsvm" ,libsvm)
+ ("randomjungle" ,randomjungle)))
+ (native-inputs
+ `(("unzip" ,unzip)))
+ (home-page "http://couger.oit.duke.edu")
+ (synopsis "Identify co-factors in sets of genomic regions")
+ (description
+ "COUGER can be applied to any two sets of genomic regions bound by
+paralogous TFs (e.g., regions derived from ChIP-seq experiments) to identify
+putative co-factors that provide specificity to each TF. The framework
+determines the genomic targets uniquely-bound by each TF, and identifies a
+small set of co-factors that best explain the in vivo binding differences
+between the two TFs.
+
+COUGER uses classification algorithms (support vector machines and random
+forests) with features that reflect the DNA binding specificities of putative
+co-factors. The features are generated either from high-throughput TF-DNA
+binding data (from protein binding microarray experiments), or from large
+collections of DNA motifs.")
+ (license license:gpl3+)))
+
(define-public clustal-omega
(package
(name "clustal-omega")
@@ -1030,6 +1101,27 @@ RNA-Seq, the MISO model uses Bayesian inference to compute the probability
that a read originated from a particular isoform.")
(license license:gpl2)))
+(define-public orfm
+ (package
+ (name "orfm")
+ (version "0.3.2")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append
+ "https://github.com/wwood/OrfM/releases/download/v"
+ version "/orfm-" version ".tar.gz"))
+ (sha256
+ (base32
+ "00jqvlspj9662ni9r4n1snxfnwkzc02i46g5nk1kwjshi6v3vgg3"))))
+ (build-system gnu-build-system)
+ (inputs `(("zlib" ,zlib)))
+ (synopsis "Simple and not slow open reading frame (ORF) caller")
+ (description
+ "An ORF caller finds stretches of DNA that when translated are not
+interrupted by stop codons. OrfM finds and prints these ORFs.")
+ (home-page "https://github.com/wwood/OrfM")
+ (license license:lgpl3+)))
+
(define-public python2-pbcore
(package
(name "python2-pbcore")
@@ -1331,7 +1423,7 @@ viewer.")
(define-public ngs-sdk
(package
(name "ngs-sdk")
- (version "1.1.0")
+ (version "1.1.1")
(source
(origin
(method url-fetch)
@@ -1341,7 +1433,7 @@ viewer.")
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
- "09fakv9w87lfg9g70kwzmnryqdjj1sz2c7kw01i6drjf787gkjhw"))))
+ "1x58gpm574n0xmk2a98gmikbgycq78ia0bvnb42k5ck34fmd5v8y"))))
(build-system gnu-build-system)
(arguments
`(#:parallel-build? #f ; not supported
@@ -1351,20 +1443,6 @@ viewer.")
'configure
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
- ;; Only replace the version suffix, not the version number in the
- ;; directory name; fixed in commit 46d4509fa8 (no release yet).
- (substitute* "setup/konfigure.perl"
- (((string-append "\\$\\(subst "
- "(\\$\\(VERSION[^\\)]*\\)),"
- "(\\$\\([^\\)]+\\)),"
- "(\\$\\([^\\)]+\\)|\\$\\@)"
- "\\)")
- _ pattern replacement target)
- (string-append "$(patsubst "
- "%" pattern ","
- "%" replacement ","
- target ")")))
-
;; The 'configure' script doesn't recognize things like
;; '--enable-fast-install'.
(zero? (system* "./configure"