rformassspectrometry / MetaboAnnotation

High level functionality to support and simplify metabolomics data annotation.
https://rformassspectrometry.github.io/MetaboAnnotation/
15 stars 9 forks source link

matchedData not working for all result objects #69

Closed jorainer closed 2 years ago

jorainer commented 2 years ago

Some Matched result objects returned by matchValues for some param classes seem not to be OK:

Mz2MassParam:

a <- 1:10
b <- 1:5
res <- matchValues(a, b, Mz2MassParam())
matchedData(res)
Error in `colnames<-`(`*tmp*`, value = new_colnames) : 
  more column names than columns

Same problem even if a and b are data.frame. Same/similar problem with Mz2MassRtParam:

m <- c(200, 300)
qry <- c(100, as.numeric(mass2mz(m, c("[M+H]+", "[M+K]+"))) + c(0, 0, 0, 5))
trgt <- c(mass2mz(m, "[M-H]-"), 400, 500)
qry_df <- data.frame(mz = qry, rt = c(50, 100, 151, 100, 150))
trgt_df <- data.frame(mz = trgt, rt = c(100, 150, 200, 250))
par <- Mz2MassRtParam(queryAdducts = c("[M+H]+", "[M+K]+"),
                      targetAdducts = "[M-H]-")
res <- matchValues(qry_df, trgt_df, par)
matchedData(res)
Error in `[.data.frame`(x, i, j, drop = drop) : 
  undefined columns selected
jorainer commented 2 years ago

Can you please have a look into that @andreavicini ?