Displaying a grid
Whenever the name of the variable containing a grid object is typed
to the console it is printed. Several datasets are already included in
the OpenRepGrid
package and are available once the package
is loaded. Two of them are bell2010
and
fbb2003
. Type one of these variable names to the console
andthe grid will be printed.
bell2010
#
# RATINGS:
# A teacher you respected - 5 6 - Mother (or the person who fill
# A person of the opposite sex t - 4 | | 7 - A person of the opposite sex t
# the unhappiest person you know - 3 | | | | 8 - The most confident person you
# closest friend of the same sex - 2 | | | | | | 9 - A person you work well with (
# self - 1 | | | | | | | | 10 - A teacher you did not resp
# | | | | | | | | | |
# relaxed (1) 4 4 6 5 3 6 5 2 2 6 (1) worried & tense
# so smart (academically) (2) 6 7 6 5 7 4 6 7 4 7 (2) smart (academically)
# dislikes sports (3) 6 3 7 6 4 4 2 3 6 3 (3) loves sports
# not interactive (4) 6 7 5 6 6 5 6 7 7 4 (4) loves people
# not transparent (5) 6 4 5 7 3 7 6 5 6 3 (5) transparent
# insensitive (6) 4 6 5 4 4 6 5 3 4 2 (6) sensitive
# fearful&timid (7) 5 4 4 6 5 3 5 6 5 5 (7) fearless
# rough (8) 5 6 6 4 5 7 7 3 5 6 (8) gentle
# accept as it is (9) 5 5 6 7 4 4 6 7 5 5 (9) loves to argue
Usually it is convenient to name an object the way you like to. You can save the grids in any variable you like. To save the grid in the variable x type
x <- bell2010
If you now type x to the console the same grid will be printed.
x
#
# RATINGS:
# A teacher you respected - 5 6 - Mother (or the person who fill
# A person of the opposite sex t - 4 | | 7 - A person of the opposite sex t
# the unhappiest person you know - 3 | | | | 8 - The most confident person you
# closest friend of the same sex - 2 | | | | | | 9 - A person you work well with (
# self - 1 | | | | | | | | 10 - A teacher you did not resp
# | | | | | | | | | |
# relaxed (1) 4 4 6 5 3 6 5 2 2 6 (1) worried & tense
# so smart (academically) (2) 6 7 6 5 7 4 6 7 4 7 (2) smart (academically)
# dislikes sports (3) 6 3 7 6 4 4 2 3 6 3 (3) loves sports
# not interactive (4) 6 7 5 6 6 5 6 7 7 4 (4) loves people
# not transparent (5) 6 4 5 7 3 7 6 5 6 3 (5) transparent
# insensitive (6) 4 6 5 4 4 6 5 3 4 2 (6) sensitive
# fearful&timid (7) 5 4 4 6 5 3 5 6 5 5 (7) fearless
# rough (8) 5 6 6 4 5 7 7 3 5 6 (8) gentle
# accept as it is (9) 5 5 6 7 4 4 6 7 5 5 (9) loves to argue
Extract a subset of the grid
One of the most powerful operators for repgrid objects is the
[
(extract) function. It can be used to access parts of the
data and reorder rows and columns. It is applied in the same way as for
other R objects (cf. R docu, or type ?Extract
to the
console). Within the squared brackets the index of the rows (constructs)
and/or columns (elements) is supplied determining the order or subset of
a grid. E.g. in order to extract the first three rows and first four
elements of the bell2010 data use. This will produce a 3x4 subset of the
grid you may save to a new object.
bell2010[1:3, 1:4]
#
# RATINGS:
# closest friend of the same sex - 2 3 - the unhappiest person you kno
# self - 1 | | 4 - A person of the opposite se
# | | | |
# relaxed (1) 4 4 6 5 (1) worried & tense
# so smart (academically) (2) 6 7 6 5 (2) smart (academically)
# dislikes sports (3) 6 3 7 6 (3) loves sports
Delete elements and/or constructs
Negative indexes indicate that a row and/or column is to be deleted. In order to delete the first construct row (line 1) and the first two elements (line 2) respectively type
bell2010[-1, ]
bell2010[, -c(1, 2)]
Reorder a grid
The brackets function can also be used to reorder a grid. To reverse the order of the constructs type
bell2010[9:1, ]
#
# RATINGS:
# A teacher you respected - 5 6 - Mother (or the person who fill
# A person of the opposite sex t - 4 | | 7 - A person of the opposite sex t
# the unhappiest person you know - 3 | | | | 8 - The most confident person you
# closest friend of the same sex - 2 | | | | | | 9 - A person you work well with (
# self - 1 | | | | | | | | 10 - A teacher you did not resp
# | | | | | | | | | |
# accept as it is (1) 5 5 6 7 4 4 6 7 5 5 (1) loves to argue
# rough (2) 5 6 6 4 5 7 7 3 5 6 (2) gentle
# fearful&timid (3) 5 4 4 6 5 3 5 6 5 5 (3) fearless
# insensitive (4) 4 6 5 4 4 6 5 3 4 2 (4) sensitive
# not transparent (5) 6 4 5 7 3 7 6 5 6 3 (5) transparent
# not interactive (6) 6 7 5 6 6 5 6 7 7 4 (6) loves people
# dislikes sports (7) 6 3 7 6 4 4 2 3 6 3 (7) loves sports
# so smart (academically) (8) 6 7 6 5 7 4 6 7 4 7 (8) smart (academically)
# relaxed (9) 4 4 6 5 3 6 5 2 2 6 (9) worried & tense
Likewise we can rearrange the order of the elements. In order to facilitate a comparison between the elements self, unhappiest person you know and mother (elements 1, 3 and 6) we may want to rearrange them next to each other.
bell2010[, c(1, 3, 6, 2, 4, 5, 7:10)]
#
# RATINGS:
# A person of the opposite sex t - 5 6 - A teacher you respected
# closest friend of the same sex - 4 | | 7 - A person of the opposite sex t
# Mother (or the person who fill - 3 | | | | 8 - The most confident person you
# the unhappiest person you know - 2 | | | | | | 9 - A person you work well with (
# self - 1 | | | | | | | | 10 - A teacher you did not resp
# | | | | | | | | | |
# relaxed (1) 4 6 6 4 5 3 5 2 2 6 (1) worried & tense
# so smart (academically) (2) 6 6 4 7 5 7 6 7 4 7 (2) smart (academically)
# dislikes sports (3) 6 7 4 3 6 4 2 3 6 3 (3) loves sports
# not interactive (4) 6 5 5 7 6 6 6 7 7 4 (4) loves people
# not transparent (5) 6 5 7 4 7 3 6 5 6 3 (5) transparent
# insensitive (6) 4 5 6 6 4 4 5 3 4 2 (6) sensitive
# fearful&timid (7) 5 4 3 4 6 5 5 6 5 5 (7) fearless
# rough (8) 5 6 7 6 4 5 7 3 5 6 (8) gentle
# accept as it is (9) 5 6 4 5 7 4 6 7 5 5 (9) loves to argue
Moving elements and constructs
Several tasks concerning reordering will be used repeatedly, like e. g. moving a construct upwards. While the extract function can fulfill this task, the code quickly becomes tedious. Hence, specialized functions are available for standard actions. E.g. to move construct 2 upwards the following two lines of code are equivalent.
The following table lists several functions that provide a shortcut for standard operations.
Function | Description |
---|---|
up() |
Move construct upwards |
down() |
Move construct downwards |
left() |
Move element to the left |
right() |
Move element to the right |
swapConstructs() |
Swap two constructs |
swapElements() |
Swap two elements |
shift() |
Move all constructs (elements) a number of rows (columns) |
Swapping poles
Due to the bipolar nature of constructs the direction of a construct is arbitrary. Hence, the poles can also be swapped without affecting the grid information itself. To reflect one or more constructs the function swapPoles can be used. The following code will reflect the constructs one to three.
swapPoles(bell2010, 1:3)
Change Ratings
To change single ratings of elements on constructs also the extract
function can be used. In this context, the square brackets are used to
determine the part of the grid that is assigned new scores. To change
the rating in cell (1,1)
of the dataset
bell2010
to 1
type
bell2010[1, 1] <- 1
Likewise, new scores can be assigned to a number of cells in the grid, to whole rows, to whole columns or to the entire grid. The following code gives some examples.
x <- bell2010[1:4, 1:5] # subset of the Bell2010 data set with four rows and five columns
x[1:3, 1] <- c(1, 4, 3) # rows 1 to 3 in column 1
x[1, c(1, 4)] <- c(2, 2) # columns 1 and 4 in row 1
x[1, ] <- c(2, 2, 1, 4, 3) # all columns in row one
x[, 1] <- c(2, 2, 1, 4) # all rows in column one
x[, ] <- c(
1, 2, 3, 4, # whole grid column wise
1, 2, 3, 4,
1, 2, 3, 4,
1, 2, 3, 4,
1, 2, 3, 4
)
Modify element and construct names
A grid object contains information about the element and construct labels, their abbreviations, their status (e.g. ideal element or preferred pole). All the information contained in a grid object can be manipulated via the functions setConstructAttr and setElelemntAttr. To e.g. change the construct labels provide the row and the new pole labels to the function.
setConstructAttr(boeker, 1, "new left pole", "new right pole")
#
# RATINGS:
# 8 - martin
# george - 7 | 9 - elizabeth
# karl - 6 | | | 10 - therapist
# kurt - 5 | | | | | 11 - irene
# father - 4 | | | | | | | 12 - childhood self
# mother - 3 | | | | | | | | | 13 - self before illness
# ideal self - 2 | | | | | | | | | | | 14 - self with delusion
# self - 1 | | | | | | | | | | | | | 15 - self as dreamer
# | | | | | | | | | | | | | | |
# new left pole (1) 1 4 2 2 3 5 2 5 4 2 6 2 2 3 3 (1) new right pole
# isolated (2) 3 6 3 5 5 4 5 4 5 4 4 4 2 2 3 (2) sociable
# closely integrated (3) 2 2 2 3 5 3 2 3 2 3 3 4 4 5 3 (3) excluded
# discursive (4) 4 1 3 1 2 4 2 3 3 2 3 3 3 5 4 (4) passive
# open minded (5) 2 1 2 1 2 4 4 2 4 2 6 3 2 2 3 (5) indifferent
# dreamy (6) 4 5 3 5 4 5 4 5 4 4 6 3 3 3 2 (6) dispassionate
# practically oriented (7) 2 1 3 2 3 3 3 2 2 3 2 3 3 3 3 (7) depressed
# playful (8) 4 5 4 3 4 3 2 3 4 4 5 3 2 4 3 (8) serious
# socially minded (9) 2 1 3 2 4 5 4 1 3 2 6 3 3 3 3 (9) selfish
# quarrelsome (10) 5 5 5 5 5 2 5 2 4 4 1 6 5 5 5 (10) peaceful
# artistic (11) 5 1 2 4 3 5 3 2 4 3 3 4 4 4 4 (11) technical
# scientific (12) 2 1 5 3 4 4 5 3 4 1 6 4 2 3 3 (12) emotional
# introvert (13) 4 5 4 6 5 3 5 3 5 2 5 2 2 2 3 (13) extrovert
# wanderlust (14) 1 1 4 2 4 5 2 5 5 3 6 1 1 2 1 (14) home oriented
To change element the label of the first element, proceed likewise.
setElementAttr(boeker, 1, "new name")
#
# RATINGS:
# 8 - martin
# george - 7 | 9 - elizabeth
# karl - 6 | | | 10 - therapist
# kurt - 5 | | | | | 11 - irene
# father - 4 | | | | | | | 12 - childhood self
# mother - 3 | | | | | | | | | 13 - self before illness
# ideal self - 2 | | | | | | | | | | | 14 - self with delusion
# new name - 1 | | | | | | | | | | | | | 15 - self as dreamer
# | | | | | | | | | | | | | | |
# balanced (1) 1 4 2 2 3 5 2 5 4 2 6 2 2 3 3 (1) get along with conflict
# isolated (2) 3 6 3 5 5 4 5 4 5 4 4 4 2 2 3 (2) sociable
# closely integrated (3) 2 2 2 3 5 3 2 3 2 3 3 4 4 5 3 (3) excluded
# discursive (4) 4 1 3 1 2 4 2 3 3 2 3 3 3 5 4 (4) passive
# open minded (5) 2 1 2 1 2 4 4 2 4 2 6 3 2 2 3 (5) indifferent
# dreamy (6) 4 5 3 5 4 5 4 5 4 4 6 3 3 3 2 (6) dispassionate
# practically oriented (7) 2 1 3 2 3 3 3 2 2 3 2 3 3 3 3 (7) depressed
# playful (8) 4 5 4 3 4 3 2 3 4 4 5 3 2 4 3 (8) serious
# socially minded (9) 2 1 3 2 4 5 4 1 3 2 6 3 3 3 3 (9) selfish
# quarrelsome (10) 5 5 5 5 5 2 5 2 4 4 1 6 5 5 5 (10) peaceful
# artistic (11) 5 1 2 4 3 5 3 2 4 3 3 4 4 4 4 (11) technical
# scientific (12) 2 1 5 3 4 4 5 3 4 1 6 4 2 3 3 (12) emotional
# introvert (13) 4 5 4 6 5 3 5 3 5 2 5 2 2 2 3 (13) extrovert
# wanderlust (14) 1 1 4 2 4 5 2 5 5 3 6 1 1 2 1 (14) home oriented
Add elements and constructs
Sometimes it is necessary to add an element or a construct. This can be achieved by modifying the input file itself. Another option is to use the functions addConstruct and addElement. The following call will add a construct and the corresponding ratings to the bell2010 dataset. The left and right pole are labeled “left pole” and “right pole” respectively.
addConstruct(bell2010, "left pole", "pole right", c(3, 1, 3, 2, 5, 4, 6, 3, 7, 1))
#
# RATINGS:
# A teacher you respected - 5 6 - Mother (or the person who fill
# A person of the opposite sex t - 4 | | 7 - A person of the opposite sex t
# the unhappiest person you know - 3 | | | | 8 - The most confident person you
# closest friend of the same sex - 2 | | | | | | 9 - A person you work well with (
# self - 1 | | | | | | | | 10 - A teacher you did not resp
# | | | | | | | | | |
# relaxed (1) 1 4 6 5 3 6 5 2 2 6 (1) worried & tense
# so smart (academically) (2) 6 7 6 5 7 4 6 7 4 7 (2) smart (academically)
# dislikes sports (3) 6 3 7 6 4 4 2 3 6 3 (3) loves sports
# not interactive (4) 6 7 5 6 6 5 6 7 7 4 (4) loves people
# not transparent (5) 6 4 5 7 3 7 6 5 6 3 (5) transparent
# insensitive (6) 4 6 5 4 4 6 5 3 4 2 (6) sensitive
# fearful&timid (7) 5 4 4 6 5 3 5 6 5 5 (7) fearless
# rough (8) 5 6 6 4 5 7 7 3 5 6 (8) gentle
# accept as it is (9) 5 5 6 7 4 4 6 7 5 5 (9) loves to argue
# left pole (10) 3 1 3 2 5 4 6 3 7 1 (10) pole right
The following code will add an element with the label “new element” to the dataset.
addElement(bell2010, "new element", c(1, 2, 5, 4, 3, 6, 5, 2, 7))
#
# RATINGS:
# 6 - Mother (or the person who fill
# A teacher you respected - 5 | 7 - A person of the opposite sex t
# A person of the opposite sex t - 4 | | | 8 - The most confident person you
# the unhappiest person you know - 3 | | | | | 9 - A person you work well with (a
# closest friend of the same sex - 2 | | | | | | | 10 - A teacher you did not respec
# self - 1 | | | | | | | | | 11 - new element
# | | | | | | | | | | |
# relaxed (1) 1 4 6 5 3 6 5 2 2 6 1 (1) worried & tense
# so smart (academically) (2) 6 7 6 5 7 4 6 7 4 7 2 (2) smart (academically)
# dislikes sports (3) 6 3 7 6 4 4 2 3 6 3 5 (3) loves sports
# not interactive (4) 6 7 5 6 6 5 6 7 7 4 4 (4) loves people
# not transparent (5) 6 4 5 7 3 7 6 5 6 3 3 (5) transparent
# insensitive (6) 4 6 5 4 4 6 5 3 4 2 6 (6) sensitive
# fearful&timid (7) 5 4 4 6 5 3 5 6 5 5 5 (7) fearless
# rough (8) 5 6 6 4 5 7 7 3 5 6 2 (8) gentle
# accept as it is (9) 5 5 6 7 4 4 6 7 5 5 7 (9) loves to argue
Defining a grid manually
The import functions make use of internal functions to construct a grid from scratch using the imported data. It is also possible to call these functions manually, an option advanced users may consider. The most convenient way is to use the function makeRepGrid. First a list of arguments (args) containing the elements and constructs names and the rating scores is created. This list is supplied to the function makeRepGrid. Note that the scale range has to be set using setScale, in order to draw the grid properly. Usually it will be more convenient to create a grid via the .txt import function.
args <- list(
name = c("element 1", "element 2", "element 3", "element 4", "element 5"),
l.name = c("left pole 1", "left pole 2", "left pole 3", "left pole 4"),
r.name = c("right pole 1", "right pole 2", "right pole3 ", "right pole 4"),
scores = c(
4, 4, 6, 5, 1,
2, 7, 6, 5, 2,
6, 3, 1, 6, 4,
6, 7, 5, 6, 3
)
)
newGrid <- makeRepgrid(args)
newGrid <- setScale(newGrid, 1, 7)
newGrid
#
# RATINGS:
# 3 - element 3
# element 2 - 2 | 4 - element 4
# element 1 - 1 | | | 5 - element 5
# | | | | |
# left pole 1 (1) 4 4 6 5 1 (1) right pole 1
# left pole 2 (2) 2 7 6 5 2 (2) right pole 2
# left pole 3 (3) 6 3 1 6 4 (3) right pole3
# left pole 4 (4) 6 7 5 6 3 (4) right pole 4