【发布时间】:2021-06-07 23:01:48
【问题描述】:
我做了我的闪亮应用:
library(shiny)
library(shinythemes)
ui <- fluidPage(
theme=shinytheme("superhero"),
sidebarLayout(
sidebarPanel(
numericInput(
"num1",
label = h3("Numeric input1"),
value = 1,
min = 1,
max = 9,
),
numericInput(
"num2",
label = h3("Numeric input2"),
value = 1,
min = 1,
max = 9,
),
numericInput(
"num3",
label = h3("Numeric input3"),
value = 1,
min = 1,
max = 9,
),
selectInput("number", label = h3("Character input"),
choices = list("A" = 1, "B" = 2, "C" = 3, "D" = 4, "E" = 5,
"F" = 6, "G" = 7, "H" = 8, "I" = 9, "J" = 10,
"K" = 11, "L" = 12, "M" = 13, "N" = 14,
"O" = 15, "P" = 16, "Q" = 17, "R" = 18,
"S" = 19, "T" = 20, "U" = 21, "V" = 22,
"W" = 23, "X" = 24, "Y" = 25, "Z" = 26,
"," = 27, "." = 28, "SPACE" = 29),
selected = 1),
),
mainPanel(
h3(textOutput("Numbers")),
)
)
)
server <- function(input, output) {
x <-reactive(
(as.numeric(input$number)*(as.numeric(input$num1)*as.numeric(input$num2)*as.numeric(input$num3)))%%29+1
)
output$Numbers <- renderText(paste("Number:",
x()))
}
shinyApp(ui, server)
现在我想将我的 x 转换为具有相同规则的字符,例如 selectInput 1 转换为 A,2 转换为 B,等等,26 转换为 Z,27 转换为“ ", 28 转换为 "."和 29 转换为单词“SPACE”,我不知道该怎么做。我试过用
p = as.numeric(substr(x, start=1, stop=29))
print(paste0(LETTERS[p]))
但我不知道如何在代码中实现这一点。
【问题讨论】: