monarch-initiative / monarch-legacy

Monarch web application and API
BSD 3-Clause "New" or "Revised" License
42 stars 37 forks source link

Analyze Phenotypes using only comparables (autofetch phenotype profiles of each) #1353

Open jmcmurry opened 8 years ago

jmcmurry commented 8 years ago

It would be nice to not have to enter a list of phenotypes if all you are looking to do is to compare a bunch of entities that have phenotype profiles. Eg. all orthologs of a gene. We should be able to fetch the superset of all phenotypes represented by a bag of genes and show the overlap across them. In cases where the phenotypes are equivalent but have different labels, collapse them. In cases where they are similar but not exact, just list both (preferably next to each other). Surely this can't be that hard?

jmcmurry commented 8 years ago

For the especially broad-spectrum phenotypes of some genes, the category view would be the most useful one. Ignore the data here, it is not exactly right, just get the general gist.

screen shot 2016-09-07 at 5 15 27 pm
kshefchek commented 7 years ago

Now that we're on solr 6 we can use pivot facets to accomplish this, for example: "fq":["object_category:\"phenotype\"", "subject_category:\"gene\"", "subject_ortholog_closure:\"NCBIGene:6469\" OR subject_gene:\"NCBIGene:6469\""]

"facet.pivot":"object_closure_label,subject_taxon_label"

Full url for SHH

However, I'm seeing some issues with our closures, ticket here: https://github.com/SciGraph/golr-loader/issues/22

We should also discuss the best approach for determining a "high level" phenotype group. We could use distance from UPHENO:0001001 and use indents to represent distance from the root class, similar to our regular disease and phenotype pages. The downside is that this view is confusing for users since it's logical to view grouped classes as siblings, whereas in this case they are not.

We could alternatively list each phenotype without indents as shown above, which is probably better to avoid confusion.

kltm commented 7 years ago

@kshefchek Could you add this as part of an bbop-manager-golr API request, and maybe a thumbnail about how you'd like it to behave? We've had various things kicking around a while (e.g. https://github.com/berkeleybop/bbop-js/search?q=pivot&type=Issues&utf8=%E2%9C%93 ), but these are now possible with the solr 6 conversion. We naturally want to make sure we can get as much as possible in a formal API/return, rather than URL banging.