borenstein-lab / burrito

A visualization tool for exploratory data analysis of metagenomic data
https://elbo-spice.gs.washington.edu/shiny/burrito/
GNU General Public License v3.0
36 stars 9 forks source link

Unable to upload a custom function hierarchy table #19

Open aboderinf opened 3 years ago

aboderinf commented 3 years ago

Hi,

Thank you for providing an excellent multi-omic tool, I've been enjoying using it in analyzing my data.

I have been trying to upload a custom function hierarchy table but I've been getting the following error: "The following functions have multiple rows in the custom function hierarchy table: K00382 K00174 ..."

From the GitHub repo, I noticed that the default function hierarchy table has single KOs linked to multiple subpathways so I was wondering if this is possible for custom function hierarchy tables.

Thank you!

Feranmi

engal commented 3 years ago

Hi,

Unfortunately, you will not currently be able to use a custom table with multiple rows for the same lowest-level function ID. The reason for this is that the BURRITO visualization cannot elegantly display functional profiles when individual functions may belong to multiple higher-level categories. We allow this in the default table because we automatically disable displaying data at the KO level, avoiding this issue. However, for custom hierarchies, we thought it would be safer to require users to provide data at a level that can be elegantly visualized. In the future, we may find time to implement a check on custom hierarchies that determines the lowest displayable level, but that is not actively being worked on.

The current work around for this would be to aggregate your functional data to a level where lower-level categories only belong to a single higher-level category.

Hope that makes sense, and sorry for the inconvenience.

aboderinf commented 3 years ago

Thanks for the response. The challenge I'm facing is that I want to explore specific pathways that are not listed as nodes on the function tree (subpathway). I initially thought the default BRITE hierarchy used was incomplete because not all pathways are included as nodes in the function tree, but I just noticed that this is in fact incorrect as all the pathways are present.

Is there a way to visualize specific pathways that are not included as nodes in the function tree?

Thanks!

engal commented 3 years ago

Just to confirm, you are interested in looking at functional groupings that are not present in our default hierarchy, correct? If so, you will need to use a custom functional hierarchy. Unfortunately, this means that if you are using KO data, you will need to do some preprocessing on your end before uploading the data to BURRITO. Specifically, you will need to aggregate your KO-level data to a level where no lower-level IDs belong to multiple higher-level IDs. For example, to use the default hierarchy file as a custom hierarchy file, you would need to remove the KO column and all input functional data would need to be submitted at the SubPathway level.

Hope that helps!

aboderinf commented 3 years ago

I used a custom functional hierarchy as you suggested but I got a blank screen as output. Any suggestions on what went wrong?

The input files I used can be found in this link--- https://drive.google.com/drive/folders/13Byp-so0JKGro6-urMPZepFQzxOZitm6?usp=sharing

Thank you!

engal commented 3 years ago

Ah, I did not realize you were using the automatic taxonomy-function linking method for your data. In this use case, the default hierarchy is required. To use your custom functional hierarchy, you will need to generate a custom genomic content or custom attribution table to use with your data. For example, PICRUSt2 can generate a custom attribution table using its stratified output option. Once you've done this, you will need to then aggregate that table so that the functions are present at the lowest level present in your custom functional hierarchy.