Generate item-level norms for age, sex, language profile and item dominance
Source:R/norms.R
bvq_norms.Rd
This function generates a data frame with the estimated proportion of
children that understand and/or produce some items for a selected age range
and participant profiles. Estimated proportions and corresponding standard
errors and confidence intervals are computed adjusting for zero- and
one-inflation (see function prop_adj()
).
Usage
bvq_norms(
participants = bvq_participants(),
responses = bvq_responses(participants),
...,
te = NULL,
item = NULL,
age = c(0, Inf)
)
Arguments
- participants
Participants data frame, as generated by
bvq_participants()
- responses
Responses data frame, as generated by
bvq_responses()
.- ...
<
dynamic-dots
>. Unquoted name of the variable(s) to group data into. Norms will be calculated by aggregating responses within the groups that result from the combination of crossing of the variables provided in...
. These variables can refer to item properties (see pool, e.g.,semantic_category
) or to participant properties (seebvq_logs()
, e.g.,lp
).- te
Translation equivalent for which the norms should be computed.
If NULL (default), norms are computed exclusively for the items indicated in
item
.If TRUE, norms are computed for both the item indicated in the
item
argument, and for its translation.If FALSE, norms are computed exclusively for the items indicated in
item
(same as NULL)If numeric vector, norms are computed for all items corresponding to the translation equivalents indicated in this argument.
- item
Character string indicating the item to compute norms for. If left
NULL
(default) norms will be computed for all items. You can check the available items in the pool data set runningdata("pool")
.- age
Numeric vector of length two (min-max) indicating the age range of participants to compute norms for.
Value
A data frame (actually, a tibble::tibble with the proportion of
participants in the sample that understand or produce the items indicated
in item
, or the translation equivalents indicated in te
.
The output contains the following variables:
te: an integer identifying the translation equivalent (a.k.a., pair of cross-language synonyms, doublets) the item belongs to.
item: character string indicating the item identifier (e.g.,
spa_mesa
). This value is unique for each item. Responses to the same item from different participants are linked by the sameitem
value.language: a character string indicating the language the item response belongs to:
"Catalan"
if item in Catalan),"Spanish"
if item in Spanish.age: an numeric vector of length 1 or 2 indicating the age range of participants (in months) for which the estimates should be computed. If a non-integer is provided (e.g.,
15.36
, it is rounded downwards usingfloor()
.)type: a character string indicating the vocabulary type computed:
"understands"
if option 'Understands' was selected, and"produces"
if option 'Understands & Says' was selected.item_dominance: a character string that takes the value
"L1"
if the item belongs to participants' language of most exposure, and L2 if the item belongs to participants' language of least exposure.label: a character string indicating the text presented to participants in the questionnaire (replacing the
item
identifier)..sum: a positive integer indicating the number of positive responses:
responses
is 2 (Understands) or 3 (Understands & Says) fortype = "understands"
, and 3 (Understands & Says) iftype = "produces"
..n: a positive integer indicating the total number number of responses (useful for computing proportions).
.prop: a numeric value ranging from 0 to 1 (both included) indicating the estimated proportion of participants that provided a positive response, adjusted following Gelman et al.'s method to account for zero- and one-inflation (see function prop_adj). Additionally, any variables specified in the
.by
argument are preserved as grouping variables.
Examples
if (FALSE) { # \dontrun{
responses <- bvq_responses()
bvq_norms(
participants = participants,
responses = responses,
item = "cat_casa",
age = c(22, 22),
lp
)
my_items <- c("cat_gos", "cat_gat")
bvq_norms(
participants = participants,
responses = responses,
item = my_items,
te = TRUE,
age = c(15, 16)
)
} # }