egeulgen / pathfindR

pathfindR: Enrichment Analysis Utilizing Active Subnetworks
https://egeulgen.github.io/pathfindR/
Other
178 stars 25 forks source link

Error "p values must all be numeric" #129

Closed ALSL2022 closed 2 years ago

ALSL2022 commented 2 years ago

Hi,

I am trying to use pathfindR on my dataset consisting of "differentially expressed" proteins (mouse), but when I run the function, I get the error "p values must all be numeric", even though it seems as if they already are?

My data:

head(DE_input) image

sapply(DE_input,class) image

The code:

DE_output <- run_pathfindR(input = DE_input, convert2alias = FALSE, gene_sets = "Custom", custom_genes = mmu_kegg_genes, custom_descriptions = mmu_kegg_descriptions, pin_name_path = path2SIF)

The error:

Error in pathfindR::input_testing(input, p_val_threshold) : p values must all be numeric

If I use the "built-in" data set "RA_input", everything works, so I guess something is wrong with my data set - do you have any idea, what I'm doing wrong?

YunielFM commented 2 years ago

Step 1: Probably you did it but, check for "NA" values in your data and remove them. Step 2: Pass the data as a dataframe, not a tibble. I found that pathfindR doesn't like the tibble class. smth like: DE_input %>% as.data.frame %>% run_pathfindR(convert2alias = FALSE, gene_sets = "Custom", custom_genes = mmu_kegg_genes, custom_descriptions = mmu_kegg_descriptions, pin_name_path = path2SIF)

I hope you can solve your problem with the instructions above.

ALSL2022 commented 2 years ago

Step 1: Probably you did it but, check for "NA" values in your data and remove them. Step 2: Pass the data as a dataframe, not a tibble. I found that pathfindR doesn't like the tibble class. I hope you can solve your problem with the instructions above.

Thank you very much! It worked perfectly when I converted to dataframe