Hi everyone,
I am working with microbial data, so I have tested the clr and ilr transformation to transform the values and work correctly. When I use CLR I have not had problems with SPLSDA and SPLS.
However, when I transform with ILR (which is an orthogonal transformation) for which I must use an orthogonal base, I obtain different results from SPLSDA when I use different orthogonal bases to perform the transformation. The main problem of the ILR transformation is the interpretation of the results, for which I perform, after obtaining the results expressed in balances, a back-transformation to obtain the results expressed in OTUs.
When I do this, I get that when I use different orthogonal bases to obtain the ILR, then the back-transformed results are different when they should be the same no matter what orthogonal base you use. Therefore, my question is focused on understanding why I have different results.
Is there any process in SPLSDA that generates different results? Do I have any distortion of the results because of the randomness of SPLSDA? How does the selection of variables and components affect the result of the SPLSDA when I use the IIR?
dades=data[,1:14]
V1=ilrBase(D=9,method = “balanced”)
ilr.1=ilr(dades[,5:13],V=V1)
loadings.ilr1=splsda.ILR$loadings$X
loadings.invilr1=ilrInv(t(loadings.ilr1), V = V1)
V2=ilrBase(D=9,method = “basic”)
ilr.2=ilr(dades[,5:13],V=V2)
loadings.ilr2=splsda.ILR$loadings$X
loadings.invilr2=ilrInv(t(loadings.ilr2), V = V2)
loadings.invilr1 is different the order and value of the OTUs more associated with components than in loadings.invilr2
Guillermo