我正在尝试为数据清理文本数据构建一个应用程序。
一旦上传了他们的文件,就会出现清理选项(我从这个示例代码中删除了它,因为它已经完美地工作了)我希望用户根据可点击的选项清理他们的数据,所以使用checkboxInputs和一个selctizeInput(拉动文件中的所有单词,您可以选择要从数据集中删除的其他单词)。单击一个操作按钮后,它应该全部运行。我已经在服务器中构建了第一个“if”,假设所有都被点击了。
然而,它在我的实际应用程序中没有任何作用。我不确定实际的错误在哪里,但感觉有一些。
非常感谢任何帮助!
ui:
checkboxInput("clean1", label = "Remove Punctuation", value = TRUE),
checkboxInput("clean2", label = "Remove Numbers", value = TRUE),
checkboxInput("clean3", label = "Convert to lower case", value = TRUE),
selectizeInput(
'removeWords', 'Remove also these words', multiple = TRUE, choices = filebywords$words),
actionButton("preprocessing", "Clean up my data")
server:
cleandata <- eventReactive(input$preprocessing, {
if (input$clean1==TRUE &&
input$clean2==TRUE &&
input$clean3==TRUE && )
{
df <- filedata()
docs <- Corpus(DirSource(df))
# clean 1 function
docs <- tm_map(docs, removePunctuation)
#clean 2 function
docs <- tm_map(docs, removeNumbers)
#clean 3 function
docs <- tm_map(docs, tolower)
# selctizeInput words
toremovedwords <- reactive({
str(sapply(sprintf('removeWords'), function(id) {
input[[id]]
}, simplify = FALSE))
})
# remove words added in selectizeinput
docs <- tm_map(docs, removeWords, c(toremovedwords()))
}
})