目前,我正在为日语平假名编写语言练习应用程序。功能部分很简单。按下button_1会产生平假名符号作为输出。当按下button_2时,它会产生符号的读数。每个显示的符号及其值都是随机显示的,所以现在我无法重复输出。
我现在的目标是使应用程序更加实用,而无需重复。为了实现这一点,我想到了该应用程序应该像这样工作:
我目前的想法是,对于这些迭代中的每一个,我都应该将样本(数据)保存到一个新的向量中,然后应用一些条件。不幸的是,我这样做的方式有时仍然会重复元素名称,并且没有重复就无法工作。我将不胜感激任何反馈和提示。预先非常感谢。
data <- c("あ" = "a", "え" = "e", "い" = "i", "お" = "o", "う" = "u", "か" = "ka", "け" ="ke", "き" = "ki", "こ" = "ko", "く" = "ku")
library(shiny)
shinyServer((function(input, output) {
values <- reactiveValues(one = 0, two = 0)
symbol_final <- ""
symbol_meta <- ""
mixed_data <- ""
index <- 1
observeEvent(input$button_1, {
values$one <- 1
values$two <- 0
})
observeEvent(input$button_2, {
values$one <- 0
values$two <- 1
})
output$Output_1 <- renderText(
{
mixed_data <<- sample(data)
if(values$one) {
if(index <= length(data)){
symbol_final <<- names(mixed_data[index])
mixed_data <<- sample(data)
return(symbol_final)
index <<- index+1
}
else{
index <<- 1
mixed_data <<- sample(sample(data))
}
return(symbol_final)
}
else if(values$two)
return(data[symbol_final])
}
)
}))