Title: | Computing Personal Values Scores |
---|---|
Description: | Compute personal values scores from various questionnaires based on the theoretical constructs proposed by professor Shalom H. Schwartz. Designed for researchers and practitioners in psychology, sociology, and related fields, the package facilitates the quantification of different dimensions related to personal values from survey data. It incorporates the recommended statistical adjustment to enhance the accuracy and interpretation of the results. Note: The package 'persval' is independently developed based on the personal values theoretical framework, and is not directly endorsed by professor Schwartz. |
Authors: | Giuseppe Corbelli [aut, cre] |
Maintainer: | Giuseppe Corbelli <[email protected]> |
License: | GPL-3 |
Version: | 1.1.0 |
Built: | 2024-10-26 04:25:31 UTC |
Source: | https://github.com/g-corbelli/persval |
This function generates a spider chart based on four higher order Basic Human Values: Openness to Change, Self-Enhancement, Conservation, and Self-Transcendence. This visualization helps in understanding the profile of higher order values for individuals or groups.
fourvalplot(df, valueMap, corrected = TRUE, standerr = TRUE, na.rm = TRUE)
fourvalplot(df, valueMap, corrected = TRUE, standerr = TRUE, na.rm = TRUE)
df |
A dataframe containing computed values for the four higher order personal values. |
valueMap |
A named vector where names are the four higher order personal values: Openness to Change ("OPEN"), Self-enhancement ("SELFENH"), Conservation ("CONS"), Self-transcendence ("SELFTRANS"). Vector values correspond to the column names in the dataframe. |
corrected |
Logical. Indicates if data are ipsatized (range -4 to +4); if FALSE, data are raw scores (range 1 to 5). |
standerr |
Logical. When TRUE, plots mean ± SE lines; when FALSE, plots only the mean. |
na.rm |
Logical. When TRUE, NAs are ignored in calculations; when FALSE, NAs affect calculations. |
A spider chart visualizing the four higher order values.
df <- data.frame( open_comp = runif(10, 1, 5), selfenh_comp = runif(10, 1, 5), cons_comp = runif(10, 1, 5), selftrans_comp = runif(10, 1, 5) ) valueMap <- c(OPEN = "open_comp", SELFENH = "selfenh_comp", CONS = "cons_comp", SELFTRANS = "selftrans_comp") fourvalplot(df, valueMap, corrected = TRUE, standerr = TRUE)
df <- data.frame( open_comp = runif(10, 1, 5), selfenh_comp = runif(10, 1, 5), cons_comp = runif(10, 1, 5), selftrans_comp = runif(10, 1, 5) ) valueMap <- c(OPEN = "open_comp", SELFENH = "selfenh_comp", CONS = "cons_comp", SELFTRANS = "selftrans_comp") fourvalplot(df, valueMap, corrected = TRUE, standerr = TRUE)
The persval package provides functions for computing personal values scores from various questionnaires based on the theoretical constructs proposed by Schwartz (Schwartz, 1992, 1996, 2015; Schwartz et al., 2017). Designed to assist researchers and practitioners in psychology, sociology, and related fields, the package facilitates the quantification of different dimensions related to personal values from survey data and the graphical representation of their relative importance. It incorporates the recommended statistical adjustment (ipsatization) to enhance the accuracy and interpretation of the results.
Supported questionnaires within the package include:
svs
: SVS-57, the Schwartz Value Survey with 57 items (Schwartz, 1992).
pvq40
: PVQ-40, the Portrait Values Questionnaire with 40 items (Schwartz, 2006; Schwartz et al., 2001).
pvq21
: PVQ-21/ESS-21, the shortened version of PVQ used in the European Social Survey (Schwartz, 2003).
twivi
: TwIVI, the Twenty Item Values Inventory (Sandy et al., 2017).
tivi
: TIVI, the Ten Item Values Inventory (Sandy et al., 2017).
The package includes functions to generate spider charts that graphically depict the relative importance of each of the ten basic personal values and the four higher order values, making it easier to present, interpret, and confront visually an individual's or group's value orientation:
tenvalplot
: Function to plot spider charts for ten basic personal values.
fourvalplot
: Function to plot spider charts for four higher order personal values.
This package is independently developed based on Schwartz’s theoretical framework and is not directly endorsed by Professor Schwartz. Researchers are advised to consult the original studies and validation articles for comprehensive insights into the theoretical and empirical basis of the instruments used (e.g.: Closs, 1996; Cornwell & Dunlop, 1994; Rudnev, 2021; Saris, 1988; Schwartz, 1992, 1996, 2015; Schwartz et al., 2017; Smith, 2004; Van Rosmalen et al., 2010).
Maintainer: Giuseppe Corbelli [email protected] (ORCID)
Closs, S. J. (1996). On the factoring and interpretation of ipsative data. Journal of Occupational and Organizational Psychology, 69(1), 41-47. doi:10.1111/j.2044-8325.1996.tb00598.x
Cornwell, J. M., & Dunlap, W. P. (1994). On the questionable soundness of factoring ipsative data: A response to Saville and Willson (1991). Journal of Occupational and Organizational Psychology, 67, 89-100. doi:10.1111/j.2044-8325.1994.tb00553.x
Rudnev, M. (2021). Caveats of non-ipsatization of basic values: A review of issues and a simulation study. Journal of Research in Personality, 93, 104-118. doi:10.1016/j.jrp.2021.104118
Sandy, C. J., Gosling, S. D., Schwartz, S. H., & Koelkebeck, T. (2017). The development and validation of brief and ultrabrief measures of values. Journal of Personality Assessment, 99(5), 545-555. doi:10.1080/00223891.2016.1231115
Saris, W. E. (Ed.). (1988). Variation in response functions: A source of measurement error in attitude research. Amsterdam: Sociometric Research Foundation.
Schwartz, S. H. (1992). Universals in the content and structure of values: Theory and empirical tests in 20 countries. In M. Zanna (Ed.), Advances in experimental social psychology (Vol. 25, pp. 1-65). New York: Academic Press. doi:10.1016/s0065-2601(08)60281-6
Schwartz, S. H. (1996). Value priorities and behavior: Applying a theory of integrated value systems. In C. Seligman, J. M. Olson, & M. P. Zanna (Eds.), The psychology of values: The Ontario symposium (Vol. 8, pp. 1-24). Hillsdale, NJ: Erlbaum.
Schwartz, S. H., Melech, G., Lehmann, A., Burgess, S., & Harris, M. (2001). Extending the cross-cultural validity of the theory of basic human values with a different method of measurement. Journal of Cross-Cultural Psychology, 32, 519-542. doi:10.1177/0022022101032005001
Schwartz, S. H. (2003). A proposal for measuring value orientations across nations. Questionnaire package of the European Social Survey, 259(290), 261.
Schwartz, S. H. (2006). Basic human values: Theory, measurement, and applications. Revue Francaise de Sociologie, 47, 929-968.
Schwartz, S. H. (2015). Basic individual values: Sources and consequences. In D. Sander & T. Brosch (Eds.), Handbook of value (pp. 63-84). Oxford, UK: Oxford University Press. doi:10.1093/acprof:oso/9780198716600.003.0004
Schwartz, S. H., Cieciuch, J., Vecchione, M., Torres, C., Dirilem-Gumus, O., & Butenko, T. (2017). Value tradeoffs propel and inhibit behavior: Validating the 19 refined values in four countries. European Journal of Social Psychology, 47(3), 241–258. doi:10.1002/ejsp.2228
Smith, P. B. (2004). Acquiescent response bias as an aspect of cultural communications style. Journal of Cross-Cultural Psychology, 35(1), 50-61. doi:10.1177/0022022103260380
Van Rosmalen, J., Van Herk, H., & Groenen, P. J. F. (2010). Identifying response styles: A latent-class bilinear multinomial logit model. Journal of Marketing Research, 47(1), 157-172. doi:10.1509/jmkr.47.1.157
Useful links:
This function computes personal values scores and different higher-order dimensions related to Schwartz's theoretical framework based on the 21 items of the PVQ-21 European Social Survey Value Scale (Schwartz, 2003). By default, the function applies the recommended statistical adjustment (individual MRAT centering) as suggested by the authors, to correct for individual differences in response styles thus enhancing the interpretative validity of the scores.
pvq21(df, items = NULL, compute = "all", correction = TRUE, na.rm = TRUE)
pvq21(df, items = NULL, compute = "all", correction = TRUE, na.rm = TRUE)
df |
A Data frame containing the raw responses for the 21 PVQ items. If "items" is not provided, it must have exactly 21 columns, and their order must correspond to the PVQ-21 items. |
items |
An optional vector containing the names or indices of the columns that correspond to the PVQ-21 items. Must be exactly 21 items. If NULL, the function assumes the items are the only columns given in the "df" parameter. |
compute |
Character. Indicates which personal values scores to compute and return. Possible values are "all" (default), "ten.values", "four.higher", "two.foci", or "two.dynamics". |
correction |
Logical. When TRUE, the scores are corrected for individual differences in the use of the response scale. Default is TRUE. |
na.rm |
Logical. When TRUE, NAs are ignored in calculations; when FALSE, NAs are preserved and will affect calculations. Default is TRUE. |
A data frame with computed values. If both "df" and "items" parameters are provided, the returned data frame includes the original data with the calculations appended as new columns.
Developed by Giuseppe Corbelli, email: [email protected], [email protected]
persval::pvq21(df = data.frame( pvq1 = c(3, 1, 4), pvq2 = c(2, 5, 3), pvq3 = c(1, 5, 2), pvq4 = c(4, 3, 5), pvq5 = c(5, 2, 1), pvq6 = c(3, 4, 2), pvq7 = c(1, 2, 4), pvq8 = c(3, 1, 5), pvq9 = c(2, 4, 1), pvq10 = c(5, 3, 2), pvq11 = c(1, 4, 3), pvq12 = c(2, 1, 5), pvq13 = c(3, 5, 4), pvq14 = c(1, 2, 3), pvq15 = c(4, 5, 1), pvq16 = c(2, 3, 4), pvq17 = c(5, 1, 2), pvq18 = c(3, 4, 1), pvq19 = c(2, 3, NA), pvq20 = c(1, 3, 4), pvq21 = c(2, 5, 1) ), correction = TRUE, compute = "all", na.rm = TRUE)
persval::pvq21(df = data.frame( pvq1 = c(3, 1, 4), pvq2 = c(2, 5, 3), pvq3 = c(1, 5, 2), pvq4 = c(4, 3, 5), pvq5 = c(5, 2, 1), pvq6 = c(3, 4, 2), pvq7 = c(1, 2, 4), pvq8 = c(3, 1, 5), pvq9 = c(2, 4, 1), pvq10 = c(5, 3, 2), pvq11 = c(1, 4, 3), pvq12 = c(2, 1, 5), pvq13 = c(3, 5, 4), pvq14 = c(1, 2, 3), pvq15 = c(4, 5, 1), pvq16 = c(2, 3, 4), pvq17 = c(5, 1, 2), pvq18 = c(3, 4, 1), pvq19 = c(2, 3, NA), pvq20 = c(1, 3, 4), pvq21 = c(2, 5, 1) ), correction = TRUE, compute = "all", na.rm = TRUE)
This function computes personal values scores and different higher-order dimensions related to Schwartz's theoretical framework based on the 40 items of the PVQ-40 Value Scale (Schwartz, 2006; Schwartz et al., 2001). By default, the function applies the recommended statistical adjustment (individual MRAT centering) as suggested by the authors, to correct for individual differences in response styles thus enhancing the interpretative validity of the scores.
pvq40(df, items = NULL, compute = "all", correction = TRUE, na.rm = TRUE)
pvq40(df, items = NULL, compute = "all", correction = TRUE, na.rm = TRUE)
df |
A Data frame containing the raw responses for the 40 PVQ items. If "items" is not provided, it must have exactly 40 columns, and their order must correspond to the PVQ-40 items. |
items |
An optional vector containing the names or indices of the columns that correspond to the PVQ-40 items. Must be exactly 40 items. If NULL, the function assumes the items are the only columns given in the "df" parameter. |
compute |
Character. Indicates which personal values scores to compute and return. Possible values are "all" (default), "ten.values", "four.higher", "two.foci", or "two.dynamics". |
correction |
Logical. When TRUE, the scores are corrected for individual differences in the use of the response scale. Default is TRUE. |
na.rm |
Logical. When TRUE, NAs are ignored in calculations; when FALSE, NAs are preserved and will affect calculations. Default is TRUE. |
A data frame with computed values. If both "df" and "items" parameters are provided, the returned data frame includes the original data with the calculations appended as new columns.
Developed by Giuseppe Corbelli, email: [email protected], [email protected]
persval::pvq40(df = data.frame( pvq1 = c(3, 1, 4), pvq2 = c(2, 5, 3), pvq3 = c(1, 5, 2), pvq4 = c(4, 3, 5), pvq5 = c(5, 2, 1), pvq6 = c(3, 4, 2), pvq7 = c(1, 2, 4), pvq8 = c(3, 1, 5), pvq9 = c(2, 4, 1), pvq10 = c(5, 3, 2), pvq11 = c(1, 4, 3), pvq12 = c(2, 1, 5), pvq13 = c(3, 5, 4), pvq14 = c(1, 2, 3), pvq15 = c(4, 5, 1), pvq16 = c(2, 3, 4), pvq17 = c(5, 1, 2), pvq18 = c(3, 4, 1), pvq19 = c(2, 3, NA), pvq20 = c(1, 3, 4), pvq21 = c(2, 5, 1), pvq22 = c(4, 1, 5), pvq23 = c(3, 4, 2), pvq24 = c(5, 1, 3), pvq25 = c(4, 2, 5), pvq26 = c(1, 3, 2), pvq27 = c(5, 4, 1), pvq28 = c(2, 1, 4), pvq29 = c(3, 5, 2), pvq30 = c(1, 4, 3), pvq31 = c(2, 3, 5), pvq32 = c(4, 1, NA), pvq33 = c(3, 5, 4), pvq34 = c(1, 2, 3), pvq35 = c(4, 1, 5), pvq36 = c(2, 3, 4), pvq37 = c(5, 2, 1), pvq38 = c(4, 3, 2), pvq39 = c(1, 5, 3), pvq40 = c(2, 4, 1) ), correction = TRUE, compute = "all", na.rm = TRUE)
persval::pvq40(df = data.frame( pvq1 = c(3, 1, 4), pvq2 = c(2, 5, 3), pvq3 = c(1, 5, 2), pvq4 = c(4, 3, 5), pvq5 = c(5, 2, 1), pvq6 = c(3, 4, 2), pvq7 = c(1, 2, 4), pvq8 = c(3, 1, 5), pvq9 = c(2, 4, 1), pvq10 = c(5, 3, 2), pvq11 = c(1, 4, 3), pvq12 = c(2, 1, 5), pvq13 = c(3, 5, 4), pvq14 = c(1, 2, 3), pvq15 = c(4, 5, 1), pvq16 = c(2, 3, 4), pvq17 = c(5, 1, 2), pvq18 = c(3, 4, 1), pvq19 = c(2, 3, NA), pvq20 = c(1, 3, 4), pvq21 = c(2, 5, 1), pvq22 = c(4, 1, 5), pvq23 = c(3, 4, 2), pvq24 = c(5, 1, 3), pvq25 = c(4, 2, 5), pvq26 = c(1, 3, 2), pvq27 = c(5, 4, 1), pvq28 = c(2, 1, 4), pvq29 = c(3, 5, 2), pvq30 = c(1, 4, 3), pvq31 = c(2, 3, 5), pvq32 = c(4, 1, NA), pvq33 = c(3, 5, 4), pvq34 = c(1, 2, 3), pvq35 = c(4, 1, 5), pvq36 = c(2, 3, 4), pvq37 = c(5, 2, 1), pvq38 = c(4, 3, 2), pvq39 = c(1, 5, 3), pvq40 = c(2, 4, 1) ), correction = TRUE, compute = "all", na.rm = TRUE)
This function computes personal values scores and different higher-order dimensions related to Schwartz's theoretical framework based on the 57 items of the Schwartz Value Survey (Schwartz, 1992). By default, the function applies the recommended statistical adjustment (individual MRAT centering) as suggested by the authors, to correct for individual differences in response styles thus enhancing the interpretative validity of the scores.
svs(df, items = NULL, compute = "all", correction = TRUE, na.rm = TRUE)
svs(df, items = NULL, compute = "all", correction = TRUE, na.rm = TRUE)
df |
A data frame containing the raw responses for the SVS items. If "items" is not provided, it must have exactly 57 columns, and their order must correspond to the SVS items. |
items |
An optional vector containing the names or indices of the columns that correspond to the SVS items. Must be exactly 57 items. If NULL, the function assumes the items are the only columns given in the "df" parameter. |
compute |
Character. Indicates which personal values scores to compute and return. Possible values are "all" (default), "ten.values", "four.higher", "two.foci", or "two.dynamics". |
correction |
Logical. When TRUE, the scores are corrected for individual differences in the use of the response scale. Default is TRUE. |
na.rm |
Logical. When TRUE, NAs are ignored in calculations; when FALSE, NAs are preserved and will affect calculations. Default is TRUE. |
A data frame with computed values. If both "df" and "items" parameters are provided, the returned data frame includes the original data with the calculations appended as new columns.
Developed by Giuseppe Corbelli, email: [email protected], [email protected]
persval::svs(df = data.frame( svs1 = c(3, 1, 4), svs2 = c(2, 5, 3), svs3 = c(1, 5, 2), svs4 = c(4, 3, 5), svs5 = c(5, 2, 1), svs6 = c(3, 4, 2), svs7 = c(1, 2, 4), svs8 = c(3, 1, 5), svs9 = c(2, 4, 1), svs10 = c(5, 3, 2), svs11 = c(1, 4, 3), svs12 = c(2, 1, 5), svs13 = c(3, 5, 4), svs14 = c(1, 2, 3), svs15 = c(4, 5, 1), svs16 = c(2, 3, 4), svs17 = c(5, 1, 2), svs18 = c(3, 4, 1), svs19 = c(2, 3, NA), svs20 = c(1, 3, 4), svs21 = c(2, 5, 1), svs22 = c(4, 1, 5), svs23 = c(3, 4, 2), svs24 = c(5, 1, 3), svs25 = c(4, 2, 5), svs26 = c(1, 3, 2), svs27 = c(5, 4, 1), svs28 = c(2, 1, 4), svs29 = c(3, 5, 2), svs30 = c(1, 4, 3), svs31 = c(2, 3, 5), svs32 = c(4, 1, NA), svs33 = c(3, 5, 4), svs34 = c(1, 2, 3), svs35 = c(4, 1, 5), svs36 = c(2, 3, 4), svs37 = c(5, 2, 1), svs38 = c(4, 3, 2), svs39 = c(1, 5, 3), svs40 = c(2, 4, 1), svs41 = c(5, 1, 2), svs42 = c(3, 2, 4), svs43 = c(2, 5, 3), svs44 = c(4, 1, 5), svs45 = c(3, 2, 4), svs46 = c(1, 5, 3), svs47 = c(4, 3, 2), svs48 = c(5, 1, 2), svs49 = c(3, 4, 1), svs50 = c(2, 5, NA), svs51 = c(1, 4, 3), svs52 = c(2, 1, 5), svs53 = c(3, 5, 4), svs54 = c(1, 2, 3), svs55 = c(4, 5, 1), svs56 = c(2, 3, 4), svs57 = c(5, 1, 2) ), correction = TRUE, compute = "all", na.rm = TRUE)
persval::svs(df = data.frame( svs1 = c(3, 1, 4), svs2 = c(2, 5, 3), svs3 = c(1, 5, 2), svs4 = c(4, 3, 5), svs5 = c(5, 2, 1), svs6 = c(3, 4, 2), svs7 = c(1, 2, 4), svs8 = c(3, 1, 5), svs9 = c(2, 4, 1), svs10 = c(5, 3, 2), svs11 = c(1, 4, 3), svs12 = c(2, 1, 5), svs13 = c(3, 5, 4), svs14 = c(1, 2, 3), svs15 = c(4, 5, 1), svs16 = c(2, 3, 4), svs17 = c(5, 1, 2), svs18 = c(3, 4, 1), svs19 = c(2, 3, NA), svs20 = c(1, 3, 4), svs21 = c(2, 5, 1), svs22 = c(4, 1, 5), svs23 = c(3, 4, 2), svs24 = c(5, 1, 3), svs25 = c(4, 2, 5), svs26 = c(1, 3, 2), svs27 = c(5, 4, 1), svs28 = c(2, 1, 4), svs29 = c(3, 5, 2), svs30 = c(1, 4, 3), svs31 = c(2, 3, 5), svs32 = c(4, 1, NA), svs33 = c(3, 5, 4), svs34 = c(1, 2, 3), svs35 = c(4, 1, 5), svs36 = c(2, 3, 4), svs37 = c(5, 2, 1), svs38 = c(4, 3, 2), svs39 = c(1, 5, 3), svs40 = c(2, 4, 1), svs41 = c(5, 1, 2), svs42 = c(3, 2, 4), svs43 = c(2, 5, 3), svs44 = c(4, 1, 5), svs45 = c(3, 2, 4), svs46 = c(1, 5, 3), svs47 = c(4, 3, 2), svs48 = c(5, 1, 2), svs49 = c(3, 4, 1), svs50 = c(2, 5, NA), svs51 = c(1, 4, 3), svs52 = c(2, 1, 5), svs53 = c(3, 5, 4), svs54 = c(1, 2, 3), svs55 = c(4, 5, 1), svs56 = c(2, 3, 4), svs57 = c(5, 1, 2) ), correction = TRUE, compute = "all", na.rm = TRUE)
This function generates a spider chart based on the Basic Human Values. It requires exactly ten value categories corresponding to the 10 predefined personal values. This visualization helps in understanding the individual or average profile of personal values.
tenvalplot(df, valueMap, corrected = TRUE, standerr = TRUE, na.rm = TRUE)
tenvalplot(df, valueMap, corrected = TRUE, standerr = TRUE, na.rm = TRUE)
df |
A dataframe containing the computed values for the ten specific personal values. |
valueMap |
A named vector where names correspond to the ten personal values: Conformity ("CO"), Tradition ("TR"), Benevolence ("BE"), Achievement ("AC"), Power ("PO"), Security ("SE"), Stimulation ("ST"), Self-direction ("SD"), Universalism ("UN"), Hedonism ("HE"). Vector values correspond to the column names in the dataframe. |
corrected |
Logical. When TRUE, data are already ipsatized (range -4 to +4); when FALSE, data are raw scores (range 1 to 5). Defaults to TRUE. |
standerr |
Logical. When TRUE, plots mean-SE and mean+SE lines; when FALSE, plots only the mean. Default is TRUE. |
na.rm |
Logical. When TRUE, NAs are ignored in calculations; when FALSE, NAs are preserved and will affect calculations. Default is TRUE. |
df <- data.frame( conf_comp = runif(10, 1, 5), trad_comp = runif(10, 1, 5), bene_comp = runif(10, 1, 5), achie_comp = runif(10, 1, 5), power_comp = runif(10, 1, 5), sec_comp = runif(10, 1, 5), stim_comp = runif(10, 1, 5), selfdir_comp = runif(10, 1, 5), univ_comp = runif(10, 1, 5), hedo_comp = runif(10, 1, 5) ) valueMap <- c(CO = "conf_comp", TR = "trad_comp", BE = "bene_comp", AC = "achie_comp", PO = "power_comp", SE = "sec_comp", ST = "stim_comp", SD = "selfdir_comp", UN = "univ_comp", HE = "hedo_comp") tenvalplot(df, valueMap)
df <- data.frame( conf_comp = runif(10, 1, 5), trad_comp = runif(10, 1, 5), bene_comp = runif(10, 1, 5), achie_comp = runif(10, 1, 5), power_comp = runif(10, 1, 5), sec_comp = runif(10, 1, 5), stim_comp = runif(10, 1, 5), selfdir_comp = runif(10, 1, 5), univ_comp = runif(10, 1, 5), hedo_comp = runif(10, 1, 5) ) valueMap <- c(CO = "conf_comp", TR = "trad_comp", BE = "bene_comp", AC = "achie_comp", PO = "power_comp", SE = "sec_comp", ST = "stim_comp", SD = "selfdir_comp", UN = "univ_comp", HE = "hedo_comp") tenvalplot(df, valueMap)
This function computes personal values scores and different higher-order dimensions related to Schwartz's theoretical framework based on the 10 items of the ultra-brief TIVI Questionnaire (Sandy et al., 2017). By default, the function applies the recommended statistical adjustment (individual MRAT centering) as suggested by the authors, to correct for individual differences in response styles thus enhancing the interpretative validity of the scores.
tivi(df, items = NULL, compute = "all", correction = TRUE, na.rm = TRUE)
tivi(df, items = NULL, compute = "all", correction = TRUE, na.rm = TRUE)
df |
A data frame containing the raw responses for the 10 TIVI items. If "items" is not provided, it must have exactly 10 columns, and their order must correspond to the TIVI items. |
items |
An optional vector containing the names or indices of the columns that correspond to the TIVI items. Must be exactly 10 items. If NULL, the function assumes the items are the only columns given in the "df" parameter. |
compute |
Character. Indicates which personal values scores to compute and return. Possible values are "all" (default), "ten.values", "four.higher", "two.foci", or "two.dynamics". |
correction |
Logical. When TRUE, the scores are corrected for individual differences in the use of the response scale. Default is TRUE. |
na.rm |
Logical. When TRUE, NAs are ignored in calculations; when FALSE, NAs are preserved and will affect calculations. Default is TRUE. |
A data frame with computed values. If both "df" and "items" parameters are provided, the returned data frame includes the original data with the calculations appended as new columns.
Developed by Giuseppe Corbelli, email: [email protected], [email protected]
persval::tivi(df = data.frame( tivi1 = c(3, 1, 4), tivi2 = c(2, 5, 3), tivi3 = c(1, 5, 2), tivi4 = c(4, 3, 5), tivi5 = c(5, 2, 1), tivi6 = c(3, 4, 2), tivi7 = c(1, 2, 4), tivi8 = c(3, 1, 5), tivi9 = c(2, 4, 1), tivi10 = c(5, 3, 2) ), correction = TRUE, compute = "all", na.rm = TRUE)
persval::tivi(df = data.frame( tivi1 = c(3, 1, 4), tivi2 = c(2, 5, 3), tivi3 = c(1, 5, 2), tivi4 = c(4, 3, 5), tivi5 = c(5, 2, 1), tivi6 = c(3, 4, 2), tivi7 = c(1, 2, 4), tivi8 = c(3, 1, 5), tivi9 = c(2, 4, 1), tivi10 = c(5, 3, 2) ), correction = TRUE, compute = "all", na.rm = TRUE)
This function computes personal values scores and different higher-order dimensions related to Schwartz's theoretical framework based on the 20 items of the TwIVI Questionnaire (Sandy et al., 2017). By default, the function applies the recommended statistical adjustment (individual MRAT centering) as suggested by the authors, to correct for individual differences in response styles thus enhancing the interpretative validity of the scores.
twivi(df, items = NULL, compute = "all", correction = TRUE, na.rm = TRUE)
twivi(df, items = NULL, compute = "all", correction = TRUE, na.rm = TRUE)
df |
A Data frame containing the raw responses for the 20 TwIVI items. If "items" is not provided, it must have exactly 20 columns, and their order must correspond to the TwIVI items. |
items |
An optional vector containing the names or indices of the columns that correspond to the TwIVI items. Must be exactly 20 items. If NULL, the function assumes the items are the only columns given in the "df" parameter. |
compute |
Character. Indicates which personal values scores to compute and return. Possible values are "all" (default), "ten.values", "four.higher", "two.foci", or "two.dynamics". |
correction |
Logical. When TRUE, the scores are corrected for individual differences in the use of the response scale. Default is TRUE. |
na.rm |
Logical. When TRUE, NAs are ignored in calculations; when FALSE, NAs are preserved and will affect calculations. Default is TRUE. |
A data frame with computed values. If both "df" and "items" parameters are provided, the returned data frame includes the original data with the calculations appended as new columns.
Developed by Giuseppe Corbelli, email: [email protected], [email protected]
persval::twivi(df = data.frame( twivi1 = c(3, 1, 4), twivi2 = c(2, 5, 3), twivi3 = c(1, 5, 2), twivi4 = c(4, 3, 5), twivi5 = c(5, 2, 1), twivi6 = c(3, 4, 2), twivi7 = c(1, 2, 4), twivi8 = c(3, 1, 5), twivi9 = c(2, 4, 1), twivi10 = c(5, 3, 2), twivi11 = c(1, 4, 3), twivi12 = c(2, 1, 5), twivi13 = c(3, 5, 4), twivi14 = c(1, 2, 3), twivi15 = c(4, 5, 1), twivi16 = c(2, 3, 4), twivi17 = c(5, 1, 2), twivi18 = c(3, 4, 1), twivi19 = c(2, 3, NA), twivi20 = c(1, 3, 4) ), correction = TRUE, compute = "all", na.rm = TRUE)
persval::twivi(df = data.frame( twivi1 = c(3, 1, 4), twivi2 = c(2, 5, 3), twivi3 = c(1, 5, 2), twivi4 = c(4, 3, 5), twivi5 = c(5, 2, 1), twivi6 = c(3, 4, 2), twivi7 = c(1, 2, 4), twivi8 = c(3, 1, 5), twivi9 = c(2, 4, 1), twivi10 = c(5, 3, 2), twivi11 = c(1, 4, 3), twivi12 = c(2, 1, 5), twivi13 = c(3, 5, 4), twivi14 = c(1, 2, 3), twivi15 = c(4, 5, 1), twivi16 = c(2, 3, 4), twivi17 = c(5, 1, 2), twivi18 = c(3, 4, 1), twivi19 = c(2, 3, NA), twivi20 = c(1, 3, 4) ), correction = TRUE, compute = "all", na.rm = TRUE)