ctr_agg {sentometrics} | R Documentation |
Set up control for aggregation into sentiment measures
Description
Sets up control object for (computation of textual sentiment and) aggregation into textual
sentiment measures.
Usage
ctr_agg(
howWithin = "proportional",
howDocs = "equal_weight",
howTime = "equal_weight",
do.sentence = FALSE,
do.ignoreZeros = TRUE,
by = "day",
lag = 1,
fill = "zero",
alphaExpDocs = 0.1,
alphasExp = seq(0.1, 0.5, by = 0.1),
do.inverseExp = FALSE,
ordersAlm = 1:3,
do.inverseAlm = TRUE,
aBeta = 1:4,
bBeta = 1:4,
weights = NULL,
tokens = NULL,
nCore = 1
)
Arguments
howWithin |
a single character vector defining how to perform aggregation within
documents or sentences. Coincides with the how argument in the compute_sentiment function. Should
length(howWithin) > 1 , the first element is used. For available options see get_hows()$words .
|
howDocs |
a single character vector defining how aggregation across documents (and/or sentences) per date will
be performed. Should length(howDocs) > 1 , the first element is used. For available options
see get_hows()$docs .
|
howTime |
a character vector defining how aggregation across dates will be performed. More than one choice
is possible. For available options see get_hows()$time .
|
do.sentence |
see compute_sentiment .
|
do.ignoreZeros |
a logical indicating whether zero sentiment values have to be ignored in the determination of
the document (and/or sentence) weights while aggregating across documents (and/or sentences). By default
do.ignoreZeros = TRUE , such that documents (and/or sentences) with a raw sentiment score of zero or for which
a given feature indicator is equal to zero are considered irrelevant.
|
by |
a single character vector, either "day", "week", "month" or "year" , to indicate at what
level the dates should be aggregated. Dates are displayed as the first day of the period, if applicable (e.g.,
"2017-03-01" for March 2017).
|
lag |
a single integer vector, being the time lag to be specified for aggregation across time. By default
equal to 1 , meaning no aggregation across time; a time weighting scheme named "dummyTime" is used in
this case.
|
fill |
a single character vector, one of c("zero", "latest", "none") , to control how missing
sentiment values across the continuum of dates considered are added. This impacts the aggregation across time,
applying the measures_fill function before aggregating, except if fill = "none" . By default equal to
"zero" , which sets the scores (and thus also the weights) of the added dates to zero in the time aggregation.
|
alphaExpDocs |
a single integer vector. A weighting smoothing factor, used if
"exponential" %in% howDocs or "inverseExponential" %in% howDocs . Value should be between 0 and 1
(both excluded); see weights_exponential .
|
alphasExp |
a numeric vector of all exponential weighting smoothing factors, used if
"exponential" %in% howTime . Values should be between 0 and 1 (both excluded); see
weights_exponential .
|
do.inverseExp |
a logical indicating if for every exponential curve its inverse has to be added,
used if "exponential" %in% howTime ; see weights_exponential .
|
ordersAlm |
a numeric vector of all Almon polynomial orders (positive) to calculate weights for, used if
"almon" %in% howTime ; see weights_almon .
|
do.inverseAlm |
a logical indicating if for every Almon polynomial its inverse has to be added, used
if "almon" %in% howTime ; see weights_almon .
|
aBeta |
a numeric vector of positive values as first Beta weighting decay parameter; see
weights_beta .
|
bBeta |
a numeric vector of positive values as second Beta weighting decay parameter; see
weights_beta .
|
weights |
optional own weighting scheme(s), used if provided as a data.frame with the number of rows
equal to the desired lag .
|
tokens |
see compute_sentiment .
|
nCore |
see compute_sentiment .
|
Details
For available options on how aggregation can occur (via the howWithin
,
howDocs
and howTime
arguments), inspect get_hows
. The control parameters
associated to howDocs
are used both for aggregation across documents and across sentences.
Value
A list
encapsulating the control parameters.
Author(s)
Samuel Borms, Keven Bluteau
See Also
measures_fill
, almons
, compute_sentiment
Examples
set.seed(505)
# simple control function
ctr1 <- ctr_agg(howTime = "linear", by = "year", lag = 3)
# more elaborate control function (particular attention to time weighting schemes)
ctr2 <- ctr_agg(howWithin = "proportionalPol",
howDocs = "exponential",
howTime = c("equal_weight", "linear", "almon", "beta", "exponential", "own"),
do.ignoreZeros = TRUE,
by = "day",
lag = 20,
ordersAlm = 1:3,
do.inverseAlm = TRUE,
alphasExp = c(0.20, 0.50, 0.70, 0.95),
aBeta = c(1, 3),
bBeta = c(1, 3, 4, 7),
weights = data.frame(myWeights = runif(20)),
alphaExp = 0.3)
# set up control function with one linear and two chosen Almon weighting schemes
a <- weights_almon(n = 70, orders = 1:3, do.inverse = TRUE, do.normalize = TRUE)
ctr3 <- ctr_agg(howTime = c("linear", "own"), by = "year", lag = 70,
weights = data.frame(a1 = a[, 1], a2 = a[, 3]),
do.sentence = TRUE)
[Package
sentometrics version 1.0.0
Index]