GithubHelp home page GithubHelp logo

genenetwork / genenetwork2 Goto Github PK

View Code? Open in Web Editor NEW
34.0 34.0 24.0 362.77 MB

GeneNetwork (2nd generation)

Home Page: http://gn2.genenetwork.org/

License: GNU Affero General Public License v3.0

Python 57.50% HTML 30.44% CSS 2.18% JavaScript 9.38% Shell 0.40% Scheme 0.10%

genenetwork2's Introduction

GeneNetwork version 1

Please see https://github.com/genenetwork for the most recent developments on GeneNetwork on GitHub.

Service initiated January, 1994 as The Portable Dictionary of the Mouse Genome and June 15, 2001 as WebQTL.

Funded by the National Institutes of Health and University of Tennessee Center for Integrative and Translational Genomics

For background see: http://en.wikipedia.org/wiki/Genenetwork

===========

Database

Genotypes

A number of directories contain data that are not checked into git. See this.

Production

For production

gn1@tux01:~/production/gnshare/gn$ . .guix-deploy

Note the extra dot. Copy and paste the URL in the container:

httpd -f /gnu/store/2g36jjrkn39d0npfrrl1rd7z0s8dp52s-httpd.conf

Zach

zas1024@tux01:~/gn1-zach/gnshare/gn$ . .guix-deploy

and paste

httpd -f /export/local/home/zas1024/gn1-zach/gnshare/gn/etc/httpd-zas1024.conf

Other

Running Genenetwork1 in modern environments can be difficult since its dependencies are no longer actively supported. With guix, however, we can reproduce the environment in which it ran. This is possible since some of the old (deprecated) packages are maintained in guix-past and guix-bioinformatics.

To host genenetwork1 in a guix container, run something like

#!/bin/sh

# Modify paths accordingly; or if you have your channels configured
# appropriately, you don't need to include the "-L" flags

/path/to/pre-inst-env guix environment \
    -L /path/to/guix-past/modules/ \
    -L /path/to/guix-bioinformatics/ \
    --pure \
    genenetwork1 \
    --ad-hoc \
    httpd-with-mod-python \
    [email protected] \
    python24-htmlgen-GN1 \
    python24-json-GN1 \
    python24-mysqlclient \
    python24-numarray \
    python24-piddle \
    python24-pp-GN1 \
    python24-pyx \
    python24-pyxlwriter \
    python24-qtlreaper \
    python24-rpy2 \
    python24-svg-GN1 \
    -- \
    httpd \
    -f \
    $(/path/to/pre-inst-env guix build -L /path/to/guix-past/modules/ -L /path/to/guix-bioinformatics/ -e '(@ (gn services gn1-httpd-config) GN1-httpd-config)') \
    -T

This runs genenetwork1 on port 8042. To change the default port, modify: GN1-httpd-config in gn1-httpd-config.scm. Other default params you can modify are:

  • pid-file (default: "/tmp/guix-gn1/httpd-genenetwork1.pid")
  • error-log (default: "/tmp/guix-gn1/httpd-genenetwork1-error-log")

Ensure the above files exist and your user can write to those directories(i.e. /tmp/guix-gn1).

LICENSE

Released under Affero General Public License 3 (AGPLv3)

genenetwork2's People

Contributors

acenteno avatar alexanderlacuna avatar arfon avatar arunisaac avatar bonfacekilz avatar brainiarc7 avatar dannyarends avatar fredmanglis avatar hazamarek avatar jgarte avatar lomereiter avatar millak avatar originalpenguin avatar pjotrp avatar robwwilliams avatar uditgulati avatar zsloan avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

genenetwork2's Issues

Feature that warns the user of outliers before mapping is missing from GN2

GN1 has a feature that pops up something warning the user if any outliers exist in the trait's sample/strain data and I believe it will automatically remove them as well. At the very least, we need to add back in the warning.

While this feature exists in GN1, the pop-up looks a little strange (aesthetically) so it might be a better idea to not borrow all the code.

Look for unsafe SQL queries

Before going live we should go through SQL queries that get modified from forms - they may appear as security breaches.

Need to fix script that updates search page drop-downs

The script that generates the drop-down fields on the main page needs to be updated so that it checks if there is a phenotype data set for that group instead of just automatically adding "(group name) Published Phenotypes" to the drop-down.

I also need to double check that phenotype data really doesn't exist for these groups/data sets. If it does exist, the PublishFreeze table in the database needs to be changed accordingly.

0.50-gn2-pre1

From @pjotrp on April 2, 2015 7:28

Copied from original issue: zsloan/genenetwork2/pull/3

Need Partial Correlation feature

This is probably medium priority; it's higher priority than something like Compare Correlates, but probably isn't necessary to have before release.

Search terms that apply to multiple data set types only work for one data set type

The relevant file for this issue is wqflask/wqflask/do_search.py

For example, the LRS search (for example "LRS=(23 46)" or "LRS>30") should be usable for both phenotype and mRNA assay data sets.

Currently, each search term's function inherits from a parent class. Right now LrsSearch inherits from MrnaAssaySearch, which means that it only works for mRNA assay data sets. Ideally there would be some way to choose which class to inherit from based on what the data set type is, but I'm not sure how to do this.

RIF Search seems to return the wrong (different from GN1 results and is slow)

A search for "RIF=mitochondrial" in the "Hippocampus Consortium M430v2 (Jun06) PDNN" data set returns over 7000 results in GN2 while it only returns over 3000 in GN1, and it also seems to take 2-3 times as long to run.

While I wrote the original code, I think it might be best for Lei to take a look at this since he is better with writing queries.

Error on search result page for some phenotype datasets

From @zsloan on May 5, 2015 17:10

This occurs mostly for human and other non-mouse species phenotype data sets. I think it has something to do with those groups not showing up in the InbredSet table in the database, though I've also seen the issue with a couple of the groups that do seem to be there.

Copied from original issue: zsloan/genenetwork2#7

Large files need to be stored in shared directory

From @pjotrp on May 5, 2015 21:18

The idea is to have a shared storage for a server. E.g.

STORAGE=/export/local/gn2/storage

This can be set in the configuration for every running server. Within the storage dir we'll use MD5 values (of the contained files) to uniquely set the dirname, e.g.

/export/local/gn2/storage/d849b0238cd26434237b28498628837d/files...

That hash value will be used to locate the data.

Copied from original issue: zsloan/genenetwork2#13

Install Arvados as a test

Arvados is FOSS and we can install it on a single server (it needs a
VM environment):

https://arvados.org/

It can run on docker (I think), so best to try on an independent
machine or even your laptop. Alternatively install in the Cloud.

To try Arvados you can get an account with

https://curoverse.com/

We just want to get a little idea of deployment (issues). They have
documentation on the websites.

Reduce number of SQL queries while loading trait page

(once I started to use remote DB, excessive queries became very apparent)

Here's an iteration over all tissues, and it should be replaced by a single query, and be done once per dataset group and not per trait:
https://github.com/genenetwork/genenetwork2/blob/53d8a8bff6418a203e3d2565aaeca4fcb5dc0752/wqflask/wqflask/show_trait/show_trait.py#L913-920

UPD: started to work on it - https://github.com/lomereiter/genenetwork2/tree/trait_page_queries

"Remove trait" missing from collections

From @zsloan on May 5, 2015 21:3

The option to remove traits is missing from the collection page. This option used to exist, so it must have been either mistakenly or purposely removed/commented out for some reason.

Copied from original issue: zsloan/genenetwork2#11

Need to add Network Graph feature

Though it probably isn't necessary to have prior to release, this is one of the more commonly used features in GN1, so it would be good to port it over to GN2.

Consistency regarding JS libraries

From @lomereiter on May 6, 2015 10:26

jQuery and D3.js are fetched from external websites, while most other libraries are stored locally

Estimated time/difficulty: Easy

Copied from original issue: zsloan/genenetwork2#17

Samples not separated by group on Trait page

From @zsloan on May 5, 2015 18:33

For example, the BXD strains are not separated from the MDP strains in the strain values portion of the page. I feel like this used to work at some point, though ideally the user would be able to customize which sets of strains he/she wants to use.

Copied from original issue: zsloan/genenetwork2#10

Synchronize with latest pylmm

From @pjotrp on April 19, 2015 10:47

Latest edition of pylmm and tested for integration. Note that human may not work.

Copied from original issue: zsloan/genenetwork2/pull/4

Position Search isn't working

Position search, for example "POSITION=(chr1 25 30)", is not working yet. I think that it used to be implemented and working for mRNA Assay data sets but ran into the same problem as I mentioned for the LRS search with it applied to multiple data set types (in this case both Genotype and mRNA Assay). Since @lomereiter seems to think it's okay to create a separate subclass for each data set type, I'll try and implement it that way.

Need to add plink genotype files for other human data sets or remove the mapping methods that use them

Currently the plink .bed/.map/.fam files used by rqtl, GEMMA, and pylmm only exist for a couple data sets, so if you try to run these mapping methods on any other data set it will throw an error (or even worse, not throw an error). At the very least, we shouldn't show these mapping methods for data sets that don't have the necessary plink files. Specifically, we should probably replace the code that just says "if human, show these mapping methods" with something that checks if the relevant genotype files exist.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.