Diablo ncol(design)

Hi all,

I’m using DIABLO to connect my transcriptomics, metabolomics and hormonomics data but i have found a problem…

design = matrix(0.1, ncol = length(data), nrow = length(data),

  •             dimnames = list(names(data), names(data)))

diag(design) = 0
Tr Me Ho
Tr 0.0 0.1 0.1
Me 0.1 0.0 0.1
Ho 0.1 0.1 0.0

sgccda.res = block.splsda(X = data, Y=Y, ncomp = 5, design = data)

Error in if (ncol(design) != nrow(design) || ncol(design) < length(X) || : **
** missing value where TRUE/FALSE needed

I manually checked the dimension of design ncol and nrow, and it is the same… i can not move on the script :frowning: Can someone help me?

Thank you

Hi Maira,

Thanks for using mixOmics and getting in touch about this issue.
I’d appreciate if you could provide a self-contained script that reproduces this error so it’s easier for us to find the issue as it is often difficult to speculate on the cause of the behaviour without an input. You can either use mixOmics data or send us a confidential email at mixomics[at]math.univ-toulouse.fr that contains your code and data.

Best wishes,

Hi Al,

I try send my data and code by email (attached file or by FILESENDER) but it did not work :frowning: Do you have another email that i can contact you?
Thank you again,

Hi Maira,

I just re-visited your question. You are inputting data to design argument. Simply change it to

sgccda.res = block.splsda(X = data, Y=Y, ncomp = 5, design = design)

And it should work just fine.

Hope it helps,


Thank you, it is work now sweat_smile:
it is new for me this type of analysis, the paper and tutorial are very clear, however i did not understand how can i choose the parameters to tuning keepX from my omics data.
I try adjust all steps for the best parameters of my analysis(ncomp=4) but this test.keepX, i really did not understand. I try used the model from TGCA tutorial only to test, and if i understand is not the best for my analysis, i take this error

test.keepX = list (Tr = c(5:9, seq(10, 18, 2), seq(20,30,5)),

  •                Me = c(5:9, seq(10, 18, 2), seq(20,30,5)),
  •                Ho = c(5:9, seq(10, 18, 2), seq(20,30,5)))

tune.TCGA = tune.block.splsda(X = data, Y = Y, ncomp = ncomp,

  •                           test.keepX = test.keepX, design = design,
  •                           validation = 'Mfold', folds = 3, nrepeat = 10,
  •                           cpus = 2, dist = "centroids.dist")

You have provided a sequence of keepX of length: 13 for block Tr and 13 for block Me and 13 for block Ho.
This results in 2197 models being fitted for each component and each nrepeat, this may take some time to run, be patient!
Error in checkForRemoteErrors(val) :
2 nodes produced errors; first error: each component of ‘keepX[[2]]’
must be lower or equal to ncol(X[[2]])=23.

The dimension of my files are:
[1] 34 18

[1] 34 23

[1] 34 11

Can you help me? I’m so sorry to be very beginner in this type of analysis :confused: