[Ruler-commits] r37 - in pkg/ruleR: inst/doc man

noreply at r-forge.r-project.org noreply at r-forge.r-project.org
Tue Aug 21 09:38:18 CEST 2012


Author: doebler
Date: 2012-08-21 09:38:17 +0200 (Tue, 21 Aug 2012)
New Revision: 37

Modified:
   pkg/ruleR/inst/doc/ruleR.Rnw
   pkg/ruleR/inst/doc/ruleR.bib
   pkg/ruleR/man/ruleR-package.Rd
Log:
Checked spelling in the main .RDd file

Modified: pkg/ruleR/inst/doc/ruleR.Rnw
===================================================================
--- pkg/ruleR/inst/doc/ruleR.Rnw	2012-08-20 14:44:11 UTC (rev 36)
+++ pkg/ruleR/inst/doc/ruleR.Rnw	2012-08-21 07:38:17 UTC (rev 37)
@@ -40,10 +40,13 @@
 \item Computer adaptive testing (CAT; \cite{elements} TODO: add more citations) relies on large pools to cover a wide range of potential person abilities. It is often expensive to produce items, so automating the process is certainly desirable here. Also if the psychometric properties of parent items or rules are known, the CAT algorithm can generate items on the fly.
 \end{enumerate}
 
-While the identification of rules does not directly imply that an rule-based generation is possible it is a necessary step. The \texttt{ruleR} package provides a framework to generate number sequence items and matrix type items in \texttt{R}. While \texttt{R} itself is not a frontend for computer based testing, it's applicability has been successfully demonstrated, for example by the concerto testing platform (\cite{concerto}).
+The identification of rules is not the same as an implementation of a rule-based item generation algorithm, but it is a necessary step. In the following we will identify some rules for number sequence items and matrix type items and explain details of their implementation in the  \texttt{ruleR} package. We aim to provide a framework to generate number sequence items and matrix type items with the ability to extend the system. 
 
+While \texttt{R} itself is not a frontend for computer based testing, it's applicability has been successfully demonstrated, for example in the form of the concerto testing platform (\cite{concerto}). Several \texttt{R} packages are worth mentioning in this context: \texttt{catR} (\cite{catR}), which provides functionality for computer adaptive testing, \texttt{ltm} (\cite{ltm}), which can be used to perform a range of psychometric analyses and \texttt{RMySQL} (\cite{RMySQL}) which handles the interaction of \texttt{R} and MySQL databases.
+
 \section{Number sequences}
 
+
 \section{Matrix items}
 
 \section{Further development of \texttt{ruleR}}

Modified: pkg/ruleR/inst/doc/ruleR.bib
===================================================================
--- pkg/ruleR/inst/doc/ruleR.bib	2012-08-20 14:44:11 UTC (rev 36)
+++ pkg/ruleR/inst/doc/ruleR.bib	2012-08-21 07:38:17 UTC (rev 37)
@@ -32,3 +32,31 @@
 	doi = {10.1007/978-0-387-85461-8},
 	author = {van der Linden, W. J. and Glas, C. A. W.}
 }
+
+
+ at Manual{catR,
+    title = {catR: an R package to generate IRT adaptive tests},
+    author = {David Magis and David Magis},
+    year = {2011},
+    note = {R package version 2.2.},
+  }
+
+
+ at Article{ltm,
+    title = {ltm: An R package for Latent Variable Modelling and Item Response Theory Analyses},
+    author = {Dimitris Rizopoulos},
+    journal = {Journal of Statistical Software},
+    year = {2006},
+    volume = {17},
+    number = {5},
+    pages = {1--25},
+    url = {http://www.jstatsoft.org/v17/i05/},
+  }
+
+ at Manual{RMySQL,
+    title = {RMySQL: R interface to the MySQL database},
+    author = {David A. James and Saikat DebRoy},
+    year = {2012},
+    note = {R package version 0.9-3},
+    url = {http://CRAN.R-project.org/package=RMySQL},
+  }

Modified: pkg/ruleR/man/ruleR-package.Rd
===================================================================
--- pkg/ruleR/man/ruleR-package.Rd	2012-08-20 14:44:11 UTC (rev 36)
+++ pkg/ruleR/man/ruleR-package.Rd	2012-08-21 07:38:17 UTC (rev 37)
@@ -1,116 +1,114 @@
-\name{ruleR-package}
-\alias{ruleR-package}
-\alias{ruleR}
-\docType{package}
-\title{
-an R package for rule based item generation
-}
-\description{
-The package generates two types of items for intelligence tests: numeric sequences and Raven type matrix items.
-Items can be generated  using either only the rules specyfied by user or random combination of rules.
-During the process of creating numeric test uniqueness of presented sequences is being checked. Program prevents also from
-generating constant sequences or sequences containing too small (>-1000) or to big elements (>1000). 
-Program generates also some noise answers in case multiple answer format is required in a test.
-
-
-}
-\details{
-\tabular{ll}{
-Package: \tab ruleR\cr
-Type: \tab Package\cr
-Version: \tab 1.0\cr
-Date: \tab 2012-07-31\cr
-License: \tab GPL-2\cr
-Depends: \tab methods\cr
-}
-~~ An overview of how to use the package, including the most important functions ~~
-}
-\author{
-Maria Rafalak, Philipp Doebler
-Maintainer: Maria Rafalak <m.rafalak at practest.com.pl>
-}
-\references{
-~~ Literature or other references for background information ~~
-}
-
-\keyword{ package }
-\seealso{
-~~ Optional links to other man pages, e.g. ~~
-~~ \code{\link[<pkg>:<pkg>-package]{<pkg>}} ~~
-}
-\examples{
-##[1] CREATING SIMPLE SINGLE OR DOUBLE RULE
-
-#single rules (operating on one argument of numeric sequence)
-ruleS1<-createSR(a1=2,cv1=14,n=0) # or: ruleS1<-new("AddConstSingleRule",constantVal=14)
-print(ruleS1)
-ruleS2<-createSR(a1=5,cv=0,n=0) #or: ruleS2<-new("DigSumSingleRule")
-print(ruleS2)
-s<-create(a1=1,cv=0,n=0) #or: s<-new("IdenSingleRule")
-print(s)
-
-# double rules (operating on two arguments of numeric sequence)
-ruleD1<-createDR(a=2, fr=s,sr=s,ns=s) #or: ruleD1<-new("MultDoubleRule")
-print(ruleD1)
-ruleD2<-createDR(a=1,fr=s,sr=s,ns=s) #or: ruleD2<-new("AddDoubleRule")
-print(ruleD2)
-
-##[2]NESTING SEVERAL RULES
-
-combine1<-createSR(a1=2,cv1=14,n=2,3,2,5,0)
-print(combine1)
-
-
-combine2<-createDR(a=1,fr=combine1,sr=s,ns=ruleS1)
-print(combine2)
-
-
-##[3] CALCULATING THE RULES
-
-calculate(ruleS1,2) # 2+14=16
-calculate(ruleS1,2,7)#2+14=16 // second argument is ignored because ruleS1 is a SingleRule
-
-calculate(ruleS2,67)#6+7=13
-calculate(ruleS2,67,45)#6+7=13 // second argument is ignored because ruleS2 is a SingleRule
-
-calculate(ruleD1,4,17)#4*17=68
-calculate(ruleD1,4) #4 //just returning the first argument
-
-calculate(ruleD2,5,17)#5+17=22
-calculate(ruleD1,5) #5 //just returning the first argument
-
-calculate(combine1,12)# (1+2)*2+14=20
-
-calculate(combine2,15,1) #41 
-# operations on first element: (1+5)*2+14=26
-# operations on second element: 1
-# DoubleRule calculated on the results: 26+1=27
-# next SingleRule calculated on the reult: 27+14=41
-
-
-##[4] GENERATING TEST 
-
-##a test generated only using rules defined by user consisting of 10 items of length 8
-
-AddRule(rulesS1)#"Your rule succesfully added tp 'MyRule' list"
-AddRule(ruleS2)#"Your rule succesfully added tp 'MyRule' list"
-AddRule(ruleD1)#"Your rule succesfully added tp 'MyRule' list"
-AddRule(ruleD2)#"Your rule succesfully added tp 'MyRule' list"
-AddRule(combine1)#"Your rule succesfully added tp 'MyRule' list"
-AddRule(combine2)#"Your rule succesfully added tp 'MyRule' list"
-AddRule(combine2) #Error in AddRule(combine2):There already is a rule that gives the same result.
-
-m<-automaticTest(testlen=10,type=2,seqlen=8) 
-# this is a sample generation, so every call of automaticTest will give different results
-m$items # matrix of items 
-m$noise # sample noise answers
-m$rules #only rules specyfied by user are used to generate items
-
-
-## a test consisting of 10 items of length 8 generated  with random combination of rules
-r<-automaticTest(testlen=10,type=1,seqlen=8)
-r$items # matrix of items 
-r$noise # sample noise answers
-r$rules
-
-}
+\name{ruleR-package}
+\alias{ruleR-package}
+\alias{ruleR}
+\docType{package}
+\title{
+ruleR: An R package for rule based item generation
+}
+\description{
+The package generates two types of items for intelligence tests: number sequences and Raven type matrix items.
+Items can be generated  using either only the rules specified by the user or random combination of rules.
+During the process of creating a number sequence test the uniqueness of the presented sequences is being checked to exclude the possiblity that two combinations of rules lead to the same sequence. There are also functions to prevent also the generation of constant sequences or sequences containing too small (>-1000) or to big elements (>1000). Distractors can also be generated by the package for use in multiple choice answer formats.
+
+
+}
+\details{
+\tabular{ll}{
+Package: \tab ruleR\cr
+Type: \tab Package\cr
+Version: \tab 1.0\cr
+Date: \tab 2012-07-31\cr
+License: \tab GPL-2\cr
+Depends: \tab methods, grid\cr
+}
+~~ An overview of how to use the package, including the most important functions ~~
+}
+\author{
+Maria Rafalak, Philipp Doebler
+Maintainer: Maria Rafalak <m.rafalak at practest.com.pl>
+}
+\references{
+~~ Literature or other references for background information ~~
+}
+
+\keyword{ package }
+\seealso{
+~~ Optional links to other man pages, e.g. ~~
+~~ \code{\link[<pkg>:<pkg>-package]{<pkg>}} ~~
+}
+\examples{
+##[1] CREATING SIMPLE SINGLE OR DOUBLE RULES
+
+# single rules (operating on the previous element of the number sequence)
+ruleS1<-createSR(a1=2,cv1=14,n=0) # or: ruleS1<-new("AddConstSingleRule",constantVal=14)
+print(ruleS1)
+ruleS2<-createSR(a1=5,cv=0,n=0) #or: ruleS2<-new("DigSumSingleRule")
+print(ruleS2)
+s<-create(a1=1,cv=0,n=0) #or: s<-new("IdenSingleRule")
+print(s)
+
+# double rules (operating on the two previous elements of the number sequence)
+ruleD1<-createDR(a=2, fr=s,sr=s,ns=s) #or: ruleD1<-new("MultDoubleRule")
+print(ruleD1)
+ruleD2<-createDR(a=1,fr=s,sr=s,ns=s) #or: ruleD2<-new("AddDoubleRule")
+print(ruleD2)
+
+##[2] NESTING SEVERAL RULES
+
+combine1<-createSR(a1=2,cv1=14,n=2,3,2,5,0)
+print(combine1)
+
+combine2<-createDR(a=1,fr=combine1,sr=s,ns=ruleS1)
+print(combine2)
+
+##[3] CALCULATING WITH THE RULES
+
+calculate(ruleS1,2) # 2+14=16
+calculate(ruleS1,2,7)#2+14=16 // second argument is ignored because ruleS1 is a SingleRule
+
+calculate(ruleS2,67)#6+7=13
+calculate(ruleS2,67,45)#6+7=13 // second argument is ignored because ruleS2 is a SingleRule
+
+calculate(ruleD1,4,17)#4*17=68
+calculate(ruleD1,4) #4 //just returning the first argument
+
+calculate(ruleD2,5,17)#5+17=22
+calculate(ruleD1,5) #5 //just returning the first argument
+
+calculate(combine1,12)# (1+2)*2+14=20
+
+calculate(combine2,15,1) #41 
+# operations on first element: (1+5)*2+14=26
+# operations on second element: 1
+# DoubleRule calculated on the results: 26+1=27
+# next SingleRule calculated on the reult: 27+14=41
+
+
+##[4] GENERATING A TEST 
+
+# a test is generated using only rules defined by user, 
+# 10 items of length 8
+
+AddRule(rulesS1) #"Your rule succesfully added tp 'MyRule' list"
+AddRule(ruleS2) #"Your rule succesfully added tp 'MyRule' list"
+AddRule(ruleD1) #"Your rule succesfully added tp 'MyRule' list"
+AddRule(ruleD2) #"Your rule succesfully added tp 'MyRule' list"
+AddRule(combine1) #"Your rule succesfully added tp 'MyRule' list"
+AddRule(combine2) #"Your rule succesfully added tp 'MyRule' list"
+AddRule(combine2) #Error in AddRule(combine2):There already is a rule that gives the same result.
+
+set.seed(1981)
+m <- automaticTest(testlen=10, type=2, seqlen=8) 
+# this is involves pseudorandom numbers, so every call of automaticTest will give different results
+m$items # matrix of items 
+m$noise # sampled distractors
+m$rules # only rules specified by user are used to generate items
+
+
+## a test consisting of 10 items of length 8 generated with a random combination of rules
+r <- automaticTest(testlen=10, type=1, seqlen=8)
+r$items # matrix of items 
+r$noise # sampled distractors
+r$rules
+
+}



More information about the Ruler-commits mailing list