gagneurlab / FRASER

FRASER - Find RAre Splicing Events in RNA-seq
MIT License
36 stars 21 forks source link

Error in if (nPcs > ncol(Matrix)) #60

Closed gianfilippo closed 9 months ago

gianfilippo commented 10 months ago

Hi,

I am trying to run the demo data, as described in the tutorial, but when I run fds <- FRASER(fds, q=c(psi5=2, psi3=3, theta=3))

I get the following error Mon Dec 11 18:39:27 2023: Fit step for: 'jaccard'. Mon Dec 11 18:39:27 2023: Running fit with correction method: PCA Mon Dec 11 18:39:28 2023: Computing PCA ... Error in if (nPcs > ncol(Matrix)) { : the condition has length > 1

I am running "R version 4.3.0"

Thanks

drewjbeh commented 9 months ago

Hi there,

Thanks for pointing this out. There is an error in this example copde in the vignette which comes from some changes in the new version of FRASER which aren't reflected in this documentation. As we fit a separate autoencoder for each splice metric (defaults: jaccard metric for FRASER 2.0, psi_5, psi_3 and theta metrics for previous FRASER versions), it's possible to specify different dimensions for each splice metric that should be fitted. Generally we recommend to determine this parameter with the optimHyperParams() function, but it's possible also manually specify values if you want to skip this time-intensive step, as in the example in the vignette. So basically, you would need to only add a parameter for jaccard in the function and it should work, for example: fds <- FRASER(fds, q=c(jaccard=2, psi5=2, psi3=2, theta=2), iterations=2)

See this file for more example fucntion calls.

Hope that helps!

gianfilippo commented 9 months ago

Hi,

thanks. It works now.

Best

On Fri, Dec 15, 2023 at 9:36 AM Drew Behrens @.***> wrote:

Hi there,

Thanks for pointing this out. There is an error in this example copde in the vignette which comes from some changes in the new version of FRASER which aren't reflected in this documentation. As we fit a separate autoencoder for each splice metric (defaults: jaccard metric for FRASER 2.0, psi_5, psi_3 and theta metrics for previous FRASER versions), it's possible to specify different dimensions for each splice metric that should be fitted. Generally we recommend to determine this parameter with the optimHyperParams() function, but it's possible also manually specify values if you want to skip this time-intensive step, as in the example in the vignette. So basically, you would need to only add a parameter for jaccard in the function and it should work, for example: fds <- FRASER(fds, q=c(jaccard=2, psi5=2, psi3=2, theta=2), iterations=2)

See this https://github.com/gagneurlab/FRASER/blob/master/R/example_functions.R file for more example fucntion calls.

Hope that helps!

— Reply to this email directly, view it on GitHub https://github.com/c-mertes/FRASER/issues/60#issuecomment-1857982891, or unsubscribe https://github.com/notifications/unsubscribe-auth/ACPSFVHR3NS25DB7ARTTKWDYJRN5NAVCNFSM6AAAAABAQSIGAOVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQNJXHE4DEOBZGE . You are receiving this because you authored the thread.Message ID: @.***>