0

ニュース記事のセンチメント分析を表示する光沢のあるアプリがあります。この一環として、私はセンチメント関数get_sentences()とを使用していsentiment()ます。コンソールでこのコードを実行すると正常に動作しますが、光沢のあるコードを実行しようとするとエラーが発生しますError in mutate_impl: Evaluation error: unused argument (.x)

関連するコードは次のとおりです。

ui <- fluidPage(
  useShinyjs(),
  sidebarLayout(
    sidebarPanel(
      ...
    mainPanel(
      tabsetPanel(type = "tab",
        ...
        tabPanel("Sentiment", 
           selectInput(inputId = "sourceSelect", label = "Media Source", sources$title),
           plotOutput("sentiment"),
         )
      )
    )
  )
)

server <- function(input, output) {

  ...

  output$sentiment <- renderPlot(
    sentiment()
  )
  sentiment <-eventReactive(input$sourceSelect, {
    max_min = getMinMax(input)
    min = max_min[1]
    max = max_min[2]
    news1 <- news %>%
      filter(isDuplicate == "FALSE") %>%
      filter(date < max) %>%
      filter(date > min) %>%
      mutate(id = seq(1, nrow(.), 1))  %>%
      mutate(selectedSource = str_detect(title, input$sourceSelect)) %>%
      select(date, body, source, title, id, selectedSource)
    news_sentiment <- news1 %>%
      mutate(sentences = map(body, ~(get_sentences(.x))), (sentiment = map(sentences, ~(sentiment(.x)))))
    ...
})
...

}


shinyApp(ui = ui, server = server)

回線上でエラーが発生していmutate(sentences = map(body, ~(get_sentences(.x))), (sentiment = map(sentences, ~(sentiment(.x)))))ます。

これをコンソールから実行すると、エラーはスローされず、完全に機能し、sentences列を含むデータフレームと、関連するリストを含む列が作成されます (センチメント関数sentimentからの正しい出力)。このパイプに渡されるフレームが、コンソール バージョンと光沢のあるバージョンの両方で同じであることをテストしました。使用している呼び出しに何か関係があるのではないかと疑っています。map(.x)

4

1 に答える 1

0

エラーを発見しました。関数が呼び出され、ライブラリからsentimentも呼び出そうとしていました。これらすべての名前を個別に変更すると、機能しました。sentimentsentimentr

于 2019-01-17T12:07:40.437 に答える