Using Circumplex Instruments¶
Source: https://circumplex.jmgirard.com/articles/using-instruments.html
Overview of Instrument-related Functions¶
Although the circumplex package is capable of analyzing and visualizing data in a “source-agnostic” manner (i.e., without knowing what the numbers correspond to), it can be helpful to both the user and the package to have more contextual information about which information/questionnaire the data come from. For example, knowing the specific instrument used can enable the package to automatically score item-level responses and standardize these scores using normative data. Furthermore, a centralized repository of information about circumplex instruments would provide a convenient and accessible way for users to discover and begin using new instruments.
The first part of this tutorial will discuss how to preview the
instruments currently available in the circumplex package, how to load
information about a specific instrument for use in analysis, and how to
extract general and specific information about that instrument. The
following functions will be discussed: instruments(), instrument(),
print(), summary(), scales(), items(), anchors(), norms(),
and View().
The second part of this tutorial will discuss how to use the information
about an instrument to transform and summarize circumplex data. It will
demonstrate how to ipsatize item-level responses (i.e. apply deviation
scoring across variables), how to calculate scale scores from item-level
responses (with or without imputing/prorating missing values), and how
to standardize scale scores using normative/comparison data. The
following functions will be discussed: ipsatize(), score(), and
standardize().
2. Loading and Examining Instrument Objects¶
Previewing the available instruments¶
You can preview the list of currently available instruments using the
instruments() function. This function will print the abbreviation,
name, and (in parentheses) the “code” for each available instrument. We
will return to the code in the next section.
The circumplex package currently includes 3 instruments ┏━━━┳━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ ┃ ┃ Abbreviation ┃ Name ┃ ┡━━━╇━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┩ │ 1 │ CSIG │ Circumplex Scales of Interpersonal Goals │ │ 2 │ IIPSC │ Inventory of Interpersonal Problems Short Circumplex │ │ 3 │ IPIPIPC │ IPIP Interpersonal Circumplex │ └───┴──────────────┴──────────────────────────────────────────────────────┘
Loading a specific instrument¶
To reduce loading time and memory usage, instrument information is not
loaded into memory when the circumplex package is loaded. Instead,
instruments should be loaded into memory on an as-needed bases. As
demonstrated below, this can be done by passing an instrument’s code
(which we saw how to find in the last section) to the
load_instrument() function. We can then examine that instrument data
using the print() function.
CSIG: Circumplex Scales of Interpersonal Goals
32 items, 8 scales, 1 normative data sets
Lock (2014)
< https://doi.org/10.1177/0146167213514280 >
Examining an instrument in-depth¶
To examine the information available about a loaded instrument, there
are several options. To print a long list of formatted information about
the instrument, use the summary() function. This will return the same
information returned by print(), followed by information about the
instrument’s scales, rating scale anchors, items, and normative data
set(s). The summary of each instrument is also available from the
package reference page.
CSIG: Circumplex Scales of Interpersonal Goals 32 items, 8 scales, 1 normative data sets Lock (2014) < https://doi.org/10.1177/0146167213514280 > The CSIG contains 8 scales: ├── PA (90°): Be authoritative ├── BC (135°): Be tough ├── DE (180°): Be self-protective ├── FG (225°): Be wary ├── HI (270°): Be conflict-avoidant ├── JK (315°): Be cooperative ├── LM (360°): Be understanding └── NO (45°): Be respected The CSIG is rated using the following 5-point scale: 0. It is not at all important that... 1. It is somewhat important that... 2. It is moderately important that... 3. It is very important that... 4. It is extremely important that... The CSIG currently has 1 normative data set(s): 1. 665 MTurkers from US, Canada, and India about interactions between nations Lock (2014) https://doi.org/10.1177/0146167213514280
Specific subsections of this output can be returned individually by
printing the scales, anchors, items, and norms attributes of the
instrument object. These functions are especially useful when you need
to know a specific bit of information about an instrument and don’t want
the console to be flooded with unneeded information.
The CSIG is rated using the following 5-point scale:
0. It is not at all important that...
1. It is somewhat important that...
2. It is moderately important that...
3. It is very important that...
4. It is extremely important that...
Some of these attributes also have additional methods to customize their
output. For instance, the scales attribute has a .show() method
which includes the option to display the items for each scale.
The CSIG contains 8 scales: ├── PA (90°): Be authoritative │ ├── 8. We are assertive │ ├── 16. We appear confident │ ├── 24. We are decisive │ └── 32. They see us as capable ├── BC (135°): Be tough │ ├── 5. We show that we can be tough │ ├── 12. They not get angry with us │ ├── 21. We are aggressive if necessary │ └── 29. We not show our weaknesses ├── DE (180°): Be self-protective │ ├── 2. We are the winners in any argument or dispute │ ├── 10. We do whatever is in our best interest │ ├── 18. We are better than them │ └── 26. We keep our guard up ├── FG (225°): Be wary │ ├── 7. We let them fend for themselves │ ├── 15. They stay out of our business │ ├── 23. We not trust them │ └── 31. We not get entangled in their affairs ├── HI (270°): Be conflict-avoidant │ ├── 4. We avoid conflict │ ├── 12. They not get angry with us │ ├── 20. We not get into arguments │ └── 28. We not make them angry ├── JK (315°): Be cooperative │ ├── 1. We are friendly │ ├── 9. We celebrate their achievements │ ├── 17. They feel we are all on the same team │ └── 25. We are cooperative ├── LM (360°): Be understanding │ ├── 6. We appreciate what they have to offer │ ├── 14. We understand their point of view │ ├── 22. We show concern for their welfare │ └── 30. We are able to compromise └── NO (45°): Be respected ├── 3. They respect what we have to say ├── 11. We get the chance to express our views ├── 19. They listen to what we have to say └── 27. They see us as responsible
3. Instrument-related tidying functions¶
It is a good idea in practice to digitize and save each participant’s response to each item on an instrument, rather than just their scores on each scale. Having access to item-level data will make it easier to spot and correct mistakes, will enable more advanced analysis of missing data, and will enable latent variable models that account for measurement error (e.g. structural equation modelling). Furthermore, the functions described below will make it easy to transform and summarize such item-level data into scale scores.
First, however, we need to make sure the item-level data is in the
expected format. Your data should be stored in a data frame where each
row corresponds to one observation (e.g. participant, organization, or
timepoint) and each column corresponds to one variable describing these
observations (e.g. item responses, demographic characteristics, scale
scores). The pandas package provides excellent tools for getting your
data into this format from a variety of different file types and
formats.
For the purpose of illustration, we will work with a small-scale data
set, which includes item-level responses to the Inventory of
Interpersonal Problems, Short Circumplex (IIP-SC) for just 10
participants. As will become important later on, this data set contains
a small amount of missing values (represented as NA). This data set is
included as part of the circumplex package and can be loaded and
previewed as follows:
| Gender | PA | BC | DE | FG | HI | JK | LM | NO | PARPD | SCZPD | SZTPD | ASPD | BORPD | HISPD | NARPD | AVPD | DPNPD | OCPD |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Female | 1.5 | 1.5 | 1.25 | 1.0 | 2.0 | 2.5 | 2.25 | 2.5 | 4 | 3 | 7 | 7 | 8 | 4 | 6 | 3 | 4 | 6 |
| Female | 0.0 | 0.25 | 0.0 | 0.25 | 1.25 | 1.75 | 2.25 | 2.25 | 1 | 0 | 2 | 0 | 1 | 2 | 3 | 0 | 1 | 0 |
| Female | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0 | 1 | 0 | 4 | 1 | 5 | 4 | 0 | 0 | 1 |
| Male | 2.0 | 1.75 | 1.75 | 2.5 | 2.0 | 1.75 | 2.0 | 2.5 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 |
| Female | 0.25 | 0.5 | 0.25 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 1 | 0 | 0 |
IIP-SC: Inventory of Interpersonal Problems Short Circumplex 32 items, 8 scales, 2 normative data sets Soldz, Budman, Demby, & Merry (1995) < https://doi.org/10.1177/1073191195002001006 > The IIP-SC contains 8 scales: ├── PA (90°): Domineering │ ├── 1. ...point of view... │ ├── 9. ...too aggressive toward... │ ├── 17. ...control other people... │ └── 25. ...argue with other... ├── BC (135°): Vindictive │ ├── 2. ...supportive of another... │ ├── 10. ...another person's happiness... │ ├── 18. ...too suspicious of... │ └── 26. ...revenge against people... ├── DE (180°): Cold │ ├── 3. ...show affection to... │ ├── 11. ...feeling of love... │ ├── 19. ...feel close to... │ └── 27. ...at a distance... ├── FG (225°): Socially avoidant │ ├── 4. ...join in on... │ ├── 12. ...introduce myself to... │ ├── 20. ...socialize with other... │ └── 28. ...get together socially... ├── HI (270°): Nonassertive │ ├── 5. ...stop bothering me... │ ├── 13. ...confront people with... │ ├── 21. ...assertive with another... │ └── 29. ...to be firm... ├── JK (315°): Exploitable │ ├── 6. ...I am angry... │ ├── 14. ...assertive without worrying... │ ├── 22. ...too easily persuaded... │ └── 30. ...people take advantage... ├── LM (360°): Overly nurturant │ ├── 7. ...my own welfare... │ ├── 15. ...please other people... │ ├── 23. ...other people's needs... │ └── 31. ...another person's misery... └── NO (45°): Intrusive ├── 8. ...keep things private... ├── 16. ...open up to... ├── 24. ...noticed too much... └── 32. ...tell personal things... The IIP-SC is rated using the following 5-point scale: 0. Not at all 1. Somewhat 2. Moderately 3. Very 4. Extremely The IIP-SC currently has 2 normative data set(s): 1. 872 American college students Hopwood, Pincus, DeMoor, & Koonce (2011) https://doi.org/10.1080/00223890802388665 2. 106 American psychiatric outpatients Soldz, Budman, Demby, & Merry (1995) https://doi.org/10.1177/1073191195002001006