1
私の光沢のあるアプリは、テキストを入力として受け取り、1単語のテキストを出力として出力することになっています。しかし、明らかに私はエラーを取得します - "引数は文字ベクトルではありません"。これらは私のコードです:r shinyのtextAreaInputはどのような型を返しますか?
app.R
library(shiny)
server <- function(input, output) {
text1 <- eventReactive(input$actionButton,{
getPrediction(input$caption)
})
output$text1 <- renderUI({
text1()
})
}
ui <- fluidPage(
sidebarLayout(
sidebarPanel(
textAreaInput(inputId="caption", label="Put your text here", width="100%", height="400px", value="", placeholder = "Placeholder"),
actionButton("actionButton", label = "Submit")
),
mainPanel(
h3("Name"),
textOutput("text1")
)
)
)
shinyApp(ui = ui, server = server)
helper.R
library(doMC)
registerDoMC(cores=detectCores())
getPrediction <- function(ptest){
corpus <- Corpus(VectorSource(ptest))
corpus.clean <- corpus %>%
tm_map(content_transformer(tolower)) %>%
tm_map(removePunctuation) %>%
tm_map(removeNumbers) %>%
tm_map(removeWords, stopwords(kind="en")) %>%
tm_map(stripWhitespace)
corpus.clean.test <- corpus.clean
fivefreq <- findFreqTerms(dtm.train, 5)
dtm.test.nb <- DocumentTermMatrix(corpus.clean.test, control=list(dictionary = fivefreq))
convert_count <- function(x) {
y <- ifelse(x > 0, 1,0)
y <- factor(y, levels=c(0,1), labels=c("No", "Yes"))
y
}
testNB <- apply(dtm.test.nb, 2, convert_count)
pred <- predict(classifier, newdata=testNB)
pred
}
私は出力として予測をプリントアウトするために何ができますか?
それは文字列を返します。あなたはprintステートメントで確かめることができます。うまく動作すると思いますが、どこからエラーが発生していると思いますか? –
私はそれを実行しようとしましたが、どこに 'dtm.train'を定義するのかわかりません。 –
ああ、私はそれを取り除いた。今私は新しいエラーを取得しています:$演算子は、原子ベクトルのために無効です。この時点で、私は本当に知りません。私も初めて光沢を使用しています。これはコード全体です:http://www.r-fiddle.org/#/fiddle?id=uq2FrPgE&version=2 実行できますか?ご協力いただきありがとうございます。 – 0x1