khliland / plsVarSel

Variable selection methods for Partial Least Squares
2 stars 4 forks source link

Request for kind help #3

Closed ebamule closed 1 year ago

ebamule commented 1 year ago

Dear Sir,

I was trying to use "plsVarSel" package. I installed it and when I am loading with library;

Install development version from GitHub

devtools::install_github("khliland/plsVarSel")

library("plsVarSel")

I am receiving an error message as follows: please any way out of this problem. thanks so much.

Registered S3 methods overwritten by 'rgl': method from knit_print.rglId
knit_print.rglOpen3d
sew.rglRecordedplot
Error in dyn.load(dynlib <- getDynlib(dir)) : unable to load shared object '/Library/Frameworks/R.framework/Versions/4.2/Resources/library/rgl/libs/rgl.so': dlopen(/Library/Frameworks/R.framework/Versions/4.2/Resources/library/rgl/libs/rgl.so, 0x0006): Library not loaded: '/opt/X11/lib/libGLU.1.dylib' Referenced from: '/Library/Frameworks/R.framework/Versions/4.2/Resources/library/rgl/libs/rgl.so' Reason: tried: '/opt/X11/lib/libGLU.1.dylib' (no such file), '/usr/local/lib/libGLU.1.dylib' (no such file), '/usr/lib/libGLU.1.dylib' (no such file) Error: package or namespace load failed for ‘plsVarSel’: .onLoad failed in loadNamespace() for 'rgl', details: call: rgl.init(initValue, onlyNULL) error: OpenGL is not available in this build In addition: Warning messages: 1: Loading rgl's DLL failed. This build of rgl depends on XQuartz, which failed to load. See the discussion in https://stackoverflow.com/a/66127391/2554330 2: Trying without OpenGL...

khliland commented 1 year ago

Dear ebamule,

Unfortunately the current version of plsVarSel depends on the rgl package because of its import of mult.chart() from the MSQC package. It seems your system has some trouble with XQuartz (guessing for a Mac). XQuartz is working fine on my Mac, but typically needs a full reboot after installation to fully work. Could you check that plotting with XQuartz works as expected, e.g., opening a terminal, writing R, and then plotting something simple like plot(1).

Regards, Kristian

ebamule commented 1 year ago

Thanks so much for your swift reply. Following your suggestion, I managed to run it.

On Wed, Aug 2, 2023, 9:27 PM Kristian Hovde Liland @.***> wrote:

Dear ebamule,

Unfortunately the current version of plsVarSel depends on the rgl package because of its import of mult.chart() from the MSQC package. It seems your system has some trouble with XQuartz (guessing for a Mac). XQuartz is working fine on my Mac, but typically needs a full reboot after installation to fully work. Could you check that plotting with XQuartz works as expected, e.g., opening a terminal, writing R, and then plotting something simple like plot(1).

Regards, Kristian

— Reply to this email directly, view it on GitHub https://github.com/khliland/plsVarSel/issues/3#issuecomment-1662212979, or unsubscribe https://github.com/notifications/unsubscribe-auth/BBUCWUOFI2WXX4HJ5NTTOM3XTJITFANCNFSM6AAAAAA26K5WCY . You are receiving this because you authored the thread.Message ID: @.***>

ebamule commented 1 year ago

Hi, Dear!

Currently, i'm working on microbial data. It's too huge data. For this, I wanted to use 'plsVarSel'. I have gone through example data: gasoline. I found it a bit tough to understand due to the nature of example data taken. It state ...~NIR. In the data i couldn't find 'NIR' column. So that i couldn't manage to use the package to select only important microbials then do predictions.

Any further help particularly with some other example data please. Any help would be appreciated.

Eba

On Thu, Aug 3, 2023, 9:43 AM Eba Muluneh @.***> wrote:

Thanks so much for your swift reply. Following your suggestion, I managed to run it.

On Wed, Aug 2, 2023, 9:27 PM Kristian Hovde Liland < @.***> wrote:

Dear ebamule,

Unfortunately the current version of plsVarSel depends on the rgl package because of its import of mult.chart() from the MSQC package. It seems your system has some trouble with XQuartz (guessing for a Mac). XQuartz is working fine on my Mac, but typically needs a full reboot after installation to fully work. Could you check that plotting with XQuartz works as expected, e.g., opening a terminal, writing R, and then plotting something simple like plot(1).

Regards, Kristian

— Reply to this email directly, view it on GitHub https://github.com/khliland/plsVarSel/issues/3#issuecomment-1662212979, or unsubscribe https://github.com/notifications/unsubscribe-auth/BBUCWUOFI2WXX4HJ5NTTOM3XTJITFANCNFSM6AAAAAA26K5WCY . You are receiving this because you authored the thread.Message ID: @.***>

khliland commented 1 year ago

Hi Eba!

In some cases, e.g., when having many variables, using the formula interface is easier if you group your variables together. For instance, if you have a matrix of microbial data micro and a response vector stress, you can make a list or data.frame where the matrix can be referred to as a single entity:

micro_list <- list(y = stress, X = micro)
micro_frame <- data.frame(y = stress, X = I(micro))

Here, the "as is" operator I() keeps the matrix accessible as micro_frame$X. I usually use the data.frame version myself. This means you can later use PLS, e.g., something like this:

micro_model <- plsr(y ~ X, data = micro_frame, ncomp = 10, validation = "CV", segments = 5)

... and then methods from the plsVarSel package with this model.

Hope this helps! Kristian

ebamule commented 1 year ago

Appreciated your support. 🙏🙏

On Fri, Aug 4, 2023, 3:41 PM Kristian Hovde Liland @.***> wrote:

Hi Eba!

In some cases, e.g., when having many variables, using the formula interface is easier if you group your variables together. For instance, if you have a matrix of microbial data micro and a response vector stress, you can make a list or data.frame where the matrix can be referred to as a single entity:

micro_list <- list(y = stress, X = micro) micro_frame <- data.frame(y = stress, X = I(micro))

Here, the "as is" operator I() keeps the matrix accessible as micro_frame$X. I usually use the data.frame version myself. This means you can later use PLS, e.g., something like this:

micro_model <- plsr(y ~ X, data = micro_frame, ncomp = 10, validation = "CV", segments = 5)

... and then methods from the plsVarSel package with this model.

Hope this helps! Kristian

— Reply to this email directly, view it on GitHub https://github.com/khliland/plsVarSel/issues/3#issuecomment-1665155229, or unsubscribe https://github.com/notifications/unsubscribe-auth/BBUCWUO7GSN3PX3BKQCOHGLXTSRT5ANCNFSM6AAAAAA26K5WCY . You are receiving this because you authored the thread.Message ID: @.***>