the openrepgrid project – software tools for the analysis and administration of repertory grid...
DESCRIPTION
In the workshop participants are introduced to the OpenRepGrid project. Part of the project is an open source software for the analysis of repertory grid data. The software currently comes in two flavors: As an online analysis tool and as an add-on package for the R program. The workshop gives an introduction to the software, its development philosophy and outlines the set of currently implemented features. Moreover, it is demonstrated how researchers may extend software features to suit their needs and actively contribute to its development. Further information about OpenRepGrid can be found on the program’s website under www.openrepgrid.org.TRANSCRIPT
The OpenRepGrid Project Software Tools for the Analysis and
Administration of Repertory Grids
EPCA Conference, Brno, June 20, 2013 Mark Heckmann University of Bremen, Germany
PART I • Motivation for OpenRepGrid • Why R? • The OpenRepGrid project
PART II • Web-based interface for OpenRepGrid PART III • Getting started with R • The OpenRepGrid R package • Creating analysis reports • (How to add new features)
Part I
General requirements for (grid) software
• Durability
• Availability
• Functionality
• Compatibility
• Documentation
• (Openness)
• Extensibility
• Usability
Current situa+on
Source: http://evolution.berkeley.edu/evosite/misconceps/images/misconceptions_beavers2.gif
No grid software offers all methods of analysis that have been devised in the literature
1
THE STRUCTURAL QUADRANTS METHOD:A NEW APPROACH TO THE ASSESSMENT OF CONSTRUCT
SYSTEM COMPLEXITY VIA THE REPERTORY GRID
JOSEP GALLIFA and LUIS BOTELLA
Department of Psychology, Ramon Llull University, Barcelona, Spain
This article presents a new mathematical method (the Structural Quadrants Method)for the assessment of construct system complexity via the repertory grid. The Struc-tural Quadrants Method (SQM) is presented step by step, and its sensitivity togrid structure is illustrated by applying it to five case studies. A validational studydemonstrating the discriminative power of the SQM and comparing it to tradi-tional measures is included. Results indicate that the SQM discriminates between agroup of 11 experts and one of 11 novices in terms of grid complexity as expected(i.e., detecting high degrees of differentiation and integration in the experts’ gridsand low degrees of differentiation and integration in the novices’ grids). The dis-criminative power of the SQM is unparalleled by the traditional measures of gridstructure compared in this article. The article ends with a section on the distinctiveadvantages of the SQM and some suggest ions for future research.
The term cognitive complexity was initially introduced by Bieri (1955),and defined as “the capacity to construe social behavior in a multidi-mensional way” (Bieri et al., 1966, p. 185). As discussed by G. J. Neimeyer(1992, p. 94), such a definition of construct system complexity empha-sizes differentiation, understood as “the relative number of differentdimensions of judgment used by a person.” In line with this notion ofcomplexity as differentiation, traditional measures of construct systemcomplexity have relied on an attempt to assess the degree of overlapor redundancy in the use of constructs, with higher degrees of overlapreflecting lower levels of differentiation and complexity (G. J. Neimeyer,1992).
A theoretically coherent notion of construct system complexity can-not solely rely on the system’s level of differentiation but must also
Received 7 May 1997; accepted 24 July 1998.The authors would like to thank Robert A. Neimeyer and two anonymous review-
ers for their insightful comments on earlier drafts.Address correspondence to Luis Botella, Department of Psychology, Ramon Llull
University, Cister 24–34, 08022-Barce lona, Spain. E-mail: [email protected]
Journal of Constructivist Psychology, 13:1–26, 2000Copyright ã 2000 Taylor & Francis1072-0537/00 $12.00 + .00
Not extensible by user
No framework to support experimental types of analysis
The output of most programs does not easily
lend itself to subsequent
computation
Source: http://www.jacksofscience.com/wp-content/uploads/2008/05/computing_occurs.jpg
Development by a single person or a
small group of researchers, each with
their own special competencies in a
certain field of research and often
limited time resources. (Fromm, 2009)
Source: http://www.kirchen-und-kapellen.de/images/content/Community.jpg
No joint community effort
to improve a program:
Development and documentation is delegated to the
software providers
Source: h1p://evolu+on.berkeley.edu/evosite/misconceps/images/misconcep+ons_beavers2.gif
Discontinued development
once its initiators have moved on to
other fields or retired
“the programs that are currently available have a short shelf-life in that they are unlikely to be updated once their creators have retired”
(Fransella, Bannister & Bell, 2004, p. 38)
What to do? • Software design that enables users
to contribute to its development • Set up infra- and communication
structures to foster participation in a joint development
Go Open Source!
Why ?
• Because I am familiar with it J
• is the lingua franca in the field of
statistics
• runs on all major platforms
• is managable by non-programmers
• becomes increasingly popular within
the social sciences
• provides an underlying framework for
further computations
• provides a wealth of functionality
• is extensible (GUI, 3D etc.)
• provides easy to use web-interface
options
Suitable for Open Source grid software development
Part II
www. .org
www.openrepgrid.org
OpenRepGrid R package OpenRepGrid wiki
OpenRepGrid OnAir mul+grid one
OpenRepGrid OnAir
A web based Graphical User Interface
www.onair.openrepgrid.org
OpenRepGrid R package
Web based Local
Building GUIs on top of OpenRepGrid
PC / Server
GUI type
OnAir More special purpose GUIs?
mulitgrid one
Part III
A five minutes R primer
Setup
+ www.r-project.org www.rstudio.org
38
Using R as a calculator
4 + 4 ! ! ! ! !# Addition!4 - 1 ! ! ! !# Subtraction!!2 + 2 * 3! ! !# standard calculating rules !(2-1) * (2+2) ! !# standard use of brackets!
39
Variable assignments
a <- 2 + 2 ! ! !# assignment operator!a ! ! ! ! !# variable value is 4!!a <- 100 ! ! # change variable value!a * 10 ! ! ! ! !# use the variable !
41
Functions
Function (lat. performance, execution) Every function uses round brackets rnorm(4)!!!!!
43
“Nurse, get on the internet, go to SURGERY.COM, scroll down and click on the ,‘Are you totally
lost?’ icon.“
44
Help files
Opening help files
?rnorm!
!Commands inside the function’s round brackets are called arguments. A function may take zero to many arguments.
rnorm(4, mean=10)!
!
Using the OpenRepGrid
R package
Web Repository with 3.500+ packages
OpenRepGrid
Load package when starting R
51
OpenRepGrid is shipped with several sample grid data sets from the literature. Type in the name of a data set and press enter
boeker!
!
!
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 ! | | | | | | | | | | | | | | | ! balanced (1) 1 4 2 2 3 5 2 5 4 2 6 2 2 3 3 (1) get along wit! isolated (2) 3 6 3 5 5 4 5 4 5 4 4 4 2 2 3 (2) sociable !ely 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!cally 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 !ocially 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 oriente!
For easier handling we save the boeker dataset in the object x!
x <- boeker!
!
!
!
Importing a dataset (textfile, gridstat, gridcore etc.) !x <- importTxt() # interactive dialog!!!!
!
!
!
!
!
Subsetting a grid using the squared brackets operator, e.g. extracting rows 1 to 5
x[1:5, ]!
!
!
!
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 ! | | | | | | | | | | | | | | | ! balanced (1) 1 4 2 2 3 5 2 5 4 2 6 2 2 3 3 (1) get along wit! isolated (2) 3 6 3 5 5 4 5 4 5 4 4 4 2 2 3 (2) sociable !ely 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 !
Creating a bertin plot
bertin(x)!
!!
Opening the documentation
?bertin!
!!
Changing the look by modifying the arguments
bertin(x, colors=c("white","darkblue"))!
!
Creating biplots of elements and constructs
biplot2d(x)!
!
Creating composite plots of elements and constructs
biplot3d(x)!
!
Detect implicative dilemmas using correlations
indexDilemma(x, self=1, ideal=2)!
###################!Implicative Dilemma!###################!!Dilemmatic Self-Ideal Construct Pairs!#####################################!!By A Priori Criteria:!! RexSI Rtot Constructs!1 0.52 0.63 1 balanced - get along * <==> 5 open minde - indifferen!2 0.60 0.64 1 balanced - get along * <==> 6 dreamy - dispassion!3 -0.35 -0.54 1 balanced - get along * <==> 7 practicall - depressed!4 0.35 0.42 1 balanced - get along * <==> 8 playful – serious!
RexSI = Correlations excluding Self & ideal!Rtot = Correlations including Self & ideal!Rtot was used as criterion!* = discrepant construct pair!
Writing things down
out now!
Press to generate document
Insert tags
Using R markdown
• Markdown is a lightweight language to structure a document
• R code chunks can be directly included • Include R code between the following
tags
```{r}
# Some R Code here
```
Want to participate?
You have suggestions or ideas?
Just get in touch!
Thanks!
Adding new features
Create a function that counts the number of
midpoint ratings
Task
Writing new functions
f <- function(){!!# some R commands!
}!f()!!!f <- function(x){!!x!
}!f(12)!! !
!midpoints <- function(x) { !!scores <- getRatingLayer(x) !!midpoint <- getScaleMidpoint(x) !!sum(scores == midpoint)!
}!!midpoints(bell2010)!
The Midpoint Function
Want to participate?
You have suggestions or ideas?
Just get in touch!
Thanks!
Backup
Literature
• Fransella, F., Bell, R. C., & Bannister, D. (2004). A manual for repertory grid technique (2nd ed.). Chichester: John Wiley & Sons.
• Fromm, M. (2009). Grid Software. European Personal Construct Association. Retrieved July 25, 2010, from http://www.epca-net.org/repgrid/software.
• Heckmann, M. (2011). OpenRepGrid - An R package for the analysis of repertory grids (Unpublished diploma thesis). University of Bremen, Bremen, Germany.
• Muenchen, R. A. (2011). The Popularity of Data Analysis Software. Retrieved March 28, 2011, from http://sites.google.com/site/r4statistics/popularity.
• R Development Core Team. (2011). R: A language and environment for statistical computing. Vienna, Austria: R Foundation for Statistical Computing. ISBN 3-900051-07-0, URL http://www.R-project.org/.
gridhub developers
Matthias Kaulartz (programming) Mark Heckmann (concept)