## ----include = FALSE----------------------------------------------------------
knitr::opts_chunk$set(
  collapse = TRUE, warning = F, message = F,
  comment = "#>"
)

## ----setup--------------------------------------------------------------------
library(sentixr)

## -----------------------------------------------------------------------------
testo <- "Oggi è una bella giornata. Esco a fare una passeggiata"

## -----------------------------------------------------------------------------
frase_ann <- sentix_annotate(testo, 
                             # set the document ID
                             docid_field = "frase")
head(frase_ann)

## -----------------------------------------------------------------------------
sentix_summarize(frase_ann)

## -----------------------------------------------------------------------------
sentix_summarize(frase_ann, 
                 simplify = TRUE)

## -----------------------------------------------------------------------------
sentix_summarize(frase_ann,
                 by = c("doc_id", "sentence_id"))

## ----eval = FALSE-------------------------------------------------------------
# sentix_annotate(recensioni_tv, model = "local")

## -----------------------------------------------------------------------------
# Load the model manually
model <- udpipe::udpipe_load_model("italian-isdt-ud-2.5-191206.udpipe")

## -----------------------------------------------------------------------------
# Multiple texts
testi <- c("Oggi è una bella giornata. Esco a fare una passeggiata", 
           "Non mi piace la pioggia, mi rende triste.")
sentix_annotate(testi,
                # loaded model
                model = model) |> head()

## -----------------------------------------------------------------------------
sentix_annotate(testi,
                model = model,
                # to specify document IDs
                docid_field = paste0("doc_", seq_along(testi))
) |> head()

## ----data---------------------------------------------------------------------
data(recensioni_tv)
recensioni_tv

## ----annotate-----------------------------------------------------------------
# Annotate the dataframe
sentix_res <- sentix_annotate(recensioni_tv, 
                              model = model)
head(sentix_res)

## ----summarize----------------------------------------------------------------
# Summarize sentiment per document
sentix_summarize(sentix_res)

## ----mal----------------------------------------------------------------------
# Use MAL lexicon
anno_mal <- sentix_annotate(recensioni_tv, 
                            model = model, dict = "MAL")
head(anno_mal)

## -----------------------------------------------------------------------------
# Summarize
summary_mal <- sentix_summarize(anno_mal)

summary_mal

## ----elita--------------------------------------------------------------------
# Use ELIta VAD lexicon
anno_vad <- sentix_annotate(recensioni_tv, 
                            model = model,
                            dict = "elita_VAD")
head(anno_vad)

## -----------------------------------------------------------------------------
# Summarize 
sentix_summarize(anno_vad)

## -----------------------------------------------------------------------------
sentix_annotate(recensioni_tv, 
                model = model,
                dict = "elita_VAD",
                rescale = "none") |> head()

## -----------------------------------------------------------------------------
anno_poly <- sentix_annotate(recensioni_tv, 
                            model = model, polypathy = TRUE)

head(anno_poly)

## -----------------------------------------------------------------------------
sentix_summarize(anno_poly,
                 # the default value
                 ambiguity = 3)

