I encountered the following error when running prcomp function in my shiny app:
Error in scale.default: length of 'scale' must equal the number of columns of 'x'
My command was:
prcomp(Annotated_Gene_PA_df_t, scale = pca_scale)
pca_scale was a radio button with code:
radioButtons("pca_scale", label = "Scale", inline = TRUE, choices = c("TRUE", "FALSE"), selected = "FALSE"),
When giving input as choices from the GUI, passing TRUE/FALSE will result in an error because they are passed in as strings meaning that they are passed with quotes "TRUE"/"FALSE" as in the above case.
Whereas we need to pass TRUE or FALSE as boolean values - without any quotes.
The below command takes user input as true/false as 1/0 and then the next command converts it into a logical boolean value.
So I changed the above line in ui.R like this:
radioButtons("pca_scale", label = "Scale", inline = TRUE, choices = c("TRUE"=1, "FALSE"=0), selected = "FALSE")
and in the server.R, I changed input$pca_scale to :
as.logical(as.numeric(input$pca_scale))
No comments:
Post a Comment