zwdzwd / sesame

🍪 SEnsible Step-wise Analysis of DNA MEthylation BeadChips
Other
63 stars 33 forks source link

Infer Sex function not working with epic v2? #127

Open cbakoo opened 11 months ago

cbakoo commented 11 months ago

Is there a way to use the infersex function with epic v2 data? I am getting an error that platform is not true. Are there other functions in sesame that do not yet work on epic v2 data?

sex_prediction_single <- inferSex(sdfs2[[1]], platform = "EPICv2") Error in inferSex(sdfs2[[1]], platform = "EPICv2") : platform %in% c("EPIC", "HM450", "MM285") is not TRUE sex_prediction_single <- inferSex(sdfs2[[1]], platform = "EPIC") Error in .sesameDataGet(title) : Data EPICv2.probeInfo not found.

zwdzwd commented 10 months ago

This is updated to support EPICv2. Sorry for the delayed reply. More accuracy info will be included soon. https://github.com/zwdzwd/sesame/blob/537833789516d0033f4fd8f3c9851207e901125d/R/sex.R#L16

bethan-mallabar-rimmer commented 10 months ago

EDIT: Anyone else having the below issue, you need to update sesame with BiocManager::install("zwdzwd/sesame") not BiocManager::install('sesame') to get the latest version which is currently 1.21.7

Thank you for the update. I reinstalled sesame today but unfortunately I am also having the same issue:

library(sesame)
sapply(c("sesame","sesameData","ExperimentHub"), function(x) as.character(packageVersion(x)))
#versions: 
#sesame    sesameData ExperimentHub 
#"1.20.0"      "1.20.0"      "2.10.0" 

inferSex(sdf)
Error in inferSex(sdf) : 
  platform %in% c("EPIC", "HM450", "MM285") is not TRUE

I ran your example:

This is updated to support EPICv2. Sorry for the delayed reply. More accuracy info will be included soon.

https://github.com/zwdzwd/sesame/blob/537833789516d0033f4fd8f3c9851207e901125d/R/sex.R#L16

#' ## EPICv2 example
#' betas = openSesame(sesameDataGet("EPICv2.8.SigDF")[[1]])

Error in .sesameDataGet(title) : Data EPICv2.8.SigDF not found.
zwdzwd commented 10 months ago

Thanks for clarifying. Yes, one needs sesameData 1.21+ (actually the corresponding ExperimentHub) to get EPICv2.8.SigDF

WalterPavicic commented 8 months ago

Hi, I´m newbie on the EPIC analysis, so I hope someone can give some advices on my issue. I´m analyzing EPICv2 data and trying to get running "inferSex", while I´m able to get result when analyzing one sample at a time, I can make it to run for 2 or more samples in the sample folder, I always get an error.

Thanks in advance Walter

A) one sample in folder:

betasv2 <- openSesame("D:/EPICv2_2024_Sesame_Session/Test_1", BPPARAM = BiocParallel::SnowParam(2)) inferSex(betasv2, platform = NULL) [1] "FEMALE"

B) two samples in folder:

betas_sub2 <- openSesame(idat_sub1, BPPARAM = BiocParallel::SnowParam(2)) Avisos: 1: In serialize(data, node$con) : 'package:stats' puede no estar disponible en el proceso de carga 2: In serialize(data, node$con) : 'package:stats' puede no estar disponible en el proceso de carga inferSex(betas_sub2, platform = NULL) Error in density.default(na.omit(vals)) : need at least 2 points to select a bandwidth automatically

sesame_checkVersion() SeSAMe requires matched versions of R, sesame, sesameData and ExperimentHub. Here is the current versions installed: R: 4.4.0 Bioconductor: 3.19 sesame: 1.21.11 sesameData: 1.21.10 ExperimentHub: 2.11.1

seq101 commented 8 months ago

@zwdzwd @WalterPavicic How important is it to switch to R 4.4 and Bioconductor 3.19 here? When upgrading to devel versions of sesame and sesameData, it doesn't work on R 4.3. I am wondering if I need to update R?