Skip to contents

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 (see bvq_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 running data("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 same item 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 using floor().)

  • 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) for type = "understands", and 3 (Understands & Says) if type = "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.

Author

Gonzalo Garcia-Castro

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)
)
} # }