Tidycomm provides a workflow to quickly add mean/sum indices of several variables to the dataset and compute reliability estimates for those added indices:
add_index()
adds a mean or sum index of the specified variablesget_reliability()
computes reliability estimates for all added indicesOnce again, we will again sample data from the Worlds of Journalism 2012-16 study for demonstration purposes.
WoJ#> # A tibble: 1,200 x 15
#> country reach employment temp_contract autonomy_selecti~ autonomy_emphas~
#> <fct> <fct> <chr> <fct> <dbl> <dbl>
#> 1 Germany Nation~ Full-time Permanent 5 4
#> 2 Germany Nation~ Full-time Permanent 3 4
#> 3 Switzerl~ Region~ Full-time Permanent 4 4
#> 4 Switzerl~ Local Part-time Permanent 4 5
#> 5 Austria Nation~ Part-time Permanent 4 4
#> 6 Switzerl~ Local Freelancer <NA> 4 4
#> 7 Germany Local Full-time Permanent 4 4
#> 8 Denmark Nation~ Full-time Permanent 3 3
#> 9 Switzerl~ Local Full-time Permanent 5 5
#> 10 Denmark Nation~ Full-time Permanent 2 4
#> # ... with 1,190 more rows, and 9 more variables: ethics_1 <dbl>,
#> # ethics_2 <dbl>, ethics_3 <dbl>, ethics_4 <dbl>, work_experience <dbl>,
#> # trust_parliament <dbl>, trust_government <dbl>, trust_parties <dbl>,
#> # trust_politicians <dbl>
ethics_1
to ethics_4
measure agreement with statements concerning ethics in journalism and may be combined into an index of ‘ethical flexbility’, while the items starting with trust_
measure trust in various political institutions and thus may be combined into an index of trust in politics.
add_index()
adds a mean index of specified variables to the data. The second (or first, if used in a pipe) argument is the name of index variable to be created:
%>%
WoJ add_index(ethical_flexibility, ethics_1, ethics_2, ethics_3, ethics_4) %>%
# Select variables of relevance for output
::select(ethical_flexibility, ethics_1, ethics_2, ethics_3, ethics_4)
dplyr#> # A tibble: 1,200 x 5
#> ethical_flexibility ethics_1 ethics_2 ethics_3 ethics_4
#> <dbl> <dbl> <dbl> <dbl> <dbl>
#> 1 2 2 3 2 1
#> 2 1.5 1 2 2 1
#> 3 2.25 2 4 2 1
#> 4 1.75 1 3 1 2
#> 5 2 2 3 2 1
#> 6 3.25 2 4 4 3
#> 7 2 1 3 2 2
#> 8 3.5 2 4 4 4
#> 9 1.75 1 2 1 3
#> 10 3.25 1 4 4 4
#> # ... with 1,190 more rows
To create a sum index instead, set type = "sum"
:
%>%
WoJ add_index(ethical_flexibility, ethics_1, ethics_2, ethics_3, ethics_4, type = "sum") %>%
# Select variables of relevance for output
::select(ethical_flexibility, ethics_1, ethics_2, ethics_3, ethics_4)
dplyr#> # A tibble: 1,200 x 5
#> ethical_flexibility ethics_1 ethics_2 ethics_3 ethics_4
#> <dbl> <dbl> <dbl> <dbl> <dbl>
#> 1 8 2 3 2 1
#> 2 6 1 2 2 1
#> 3 9 2 4 2 1
#> 4 7 1 3 1 2
#> 5 8 2 3 2 1
#> 6 13 2 4 4 3
#> 7 8 1 3 2 2
#> 8 14 2 4 4 4
#> 9 7 1 2 1 3
#> 10 13 1 4 4 4
#> # ... with 1,190 more rows
Use get_reliability()
to compute reliability/internal consistency estimates for indices created with add_index()
. Passing no further arguments to the function will automatically compute reliability estimates for all indices created with add_index()
found in the data and output Cronbach’s \(\alpha\) along with descriptives and index information.
# Add two indices to data
<- WoJ %>%
WoJ add_index(ethical_flexibility, ethics_1, ethics_2, ethics_3, ethics_4) %>%
add_index(trust_in_politics, trust_parliament, trust_government, trust_parties, trust_politicians)
%>%
WoJ get_reliability()
#> # A tibble: 2 x 5
#> Index Index_of M SD Cronbachs_Alpha
#> <chr> <chr> <dbl> <dbl> <dbl>
#> 1 ethical_fle~ ethics_1, ethics_2, ethics_3, ethics~ 2.45 0.777 0.612
#> 2 trust_in_po~ trust_parliament, trust_government, ~ 2.70 0.652 0.856
If you only want reliability estimates for specific indices, pass their names as function arguments.
%>%
WoJ get_reliability(trust_in_politics)
#> # A tibble: 1 x 5
#> Index Index_of M SD Cronbachs_Alpha
#> <chr> <chr> <dbl> <dbl> <dbl>
#> 1 trust_in_p~ trust_parliament, trust_government, t~ 2.70 0.652 0.856
Essentially, get_reliability()
provides a wrapper for the ci.reliability function from the MBESS package. Thus, all arguments of MBESS::ci.reliability()
can be passed to get_reliability()
. For example, to output \(\omega\) instead of Cronbach’s \(\alpha\) including robust maximum likelihood confidence intervals, you can type:
%>%
WoJ get_reliability(type = 'omega', interval.type = 'mlr')
#> # A tibble: 2 x 8
#> Index Index_of M SD Omega CI_LL CI_UL CI_Type
#> <chr> <chr> <dbl> <dbl> <dbl> <dbl> <dbl> <chr>
#> 1 ethical_~ ethics_1, ethics_2, et~ 2.45 0.777 0.626 0.590 0.663 robust maximu~
#> 2 trust_in~ trust_parliament, trus~ 2.70 0.652 0.856 0.840 0.871 robust maximu~
See the function documentation for more info (and don’t forget to cite the MBESS
package if using get_reliability()
).