IntervalData
class prototype
has been removed since, as it is indicated
on the help page of setClass()
function, these arguments are currently
allowed, but either they are unlikely to be useful or there are modern
alternatives that are preferred. This change motivates the simplification
of distance()
function by removing one of its checks.
IntervalData
class representation
has been changed to slots
argument
since, as it is indicated on the help page of setClass()
function, these
arguments are deprecated from version 3.0.0 of R and should be avoided.
IntervalData
, IntervalList
, and IntervalMatrix
classes validity
has
been changed to setValidity
since, as it is indicated on the help page of
setClass()
function, these arguments are currently allowed, but either they
are unlikely to be useful or there are modern alternatives that are
preferred.
IntervalList
and IntervalMatrix
classes have been redefined in order to
reduce the package's computational weight. In the previous version, their
unique slot .Data
was created by default as an object of class list
or
matrix
, respectively, containing several IntervalData
instances. Then,
some of list
or matrix
methods were inherited by IntervalList
and
IntervalMatrix
objects. Now, these two classes have two slots, named mid
and spr
, containing numeric
vectors or matrix
objects with the
mid-points and the spreads of the intervals. It should be remarked that with
this new implementation no list
or matrix
methods are inherited by
IntervalList
and IntervalMatrix
objects.
age
variable from lackinfo
data set has been removed. Therefore,
the examples and tests that use this data have been modified in order
to select the correct variables.
ivd2likert()
and ivd2vas()
functions have been renamed as
ivs2likert()
and ivs2vas()
, respectively.
ivd
argument in cronbach()
function has been renamed as ivs
.
simulIVS()
returns a data.frame
object, not a matrix
as in the previous
package's version.
a1
and a2
arguments in IntervalData()
function are now forced to be
single real numbers stored as unique numeric
objects.
theta
argument in cov()
, cronbach()
, distance()
, ivs2likert()
, and
var()
functions is now forced to be a single positive real number stored
as a unique numeric
object.
bounds
and mid
arguments in plot()
function's methods are now forced
to be single logical
objects.
ivs
argument in cronbach()
function is now forced
to be a single logical
object.
k
argument in ivs2likert()
function is now forced to be a single
positive integer number stored as a unique numeric
object.
minimum
and maximum
arguments in ivs2likert()
and simulIVS()
functions
are now forced to be single real numbers stored as single numeric
objects.
n
and k
arguments in simulIVS()
function are now forced to be single
positive integer numbers stored as single numeric
objects.
w1
, w2
, and w3
arguments in simulIVS()
function are now forced to be
single real numbers in [0, 1] stored as single numeric
objects.
p
and q
arguments in simulIVS()
function are now forced to be single
non-negative real numbers stored as single numeric
objects.
object
argument in as.IntervalData()
function is now forced to be a single
real number stored as a unique numeric
value.
c()
function's methods have been redefined in a simpler way.
DESCRIPTION
file was updated as follows:
Description
field was include a more detailed explanation of package's
functionality and it also incorporates the links to the web pages of the
two Research Groups, whose publications and investigations inspire the
development of this package.Authors@R:
and Author
fields.BugReports
, URL
, Imports
and Suggests
fields were added.RoxygenNote
field was updated to 7.2.1.Date
field was removed as it was suggested from pkgcheck()
function from
the pkgcheck package.Depends
field to Imports
one.Suggests
field.Due to the new definition of IntervalList
and IntervalMatrix
classes, it
was necessary to create some new methods in order to calculate these objects
sizes. In particular, length()
function method was developed for
IntervalList
objects and dim()
, ncol()
, and nrow()
methods were
defined for IntervalMatrix
objects.
In order to provide customized and controlled access to the classes slots, two
accessor functions, named mid()
and spr()
, were created. They return the
information stored on mid
and spr
slots, respectively. They are a
user-friendly alternative to the @
accessor, since it does not force others
to know the implementation details. Some replacement methods for these slots
were defined through mid<-
and "spr<-" commands.
A new virtual class, named IntervalDataOrIntervalList
, was created as the
union of IntervalData
and IntervalList
classes only for internal purposes
such as defining method signatures when several objects of these two classes
are supplied.
A new virtual class, named IntervalListOrIntervalMatrix
, was created as the
union of IntervalList
and IntervalMatrix
classes only for internal purposes
such as defining method signatures when several objects of these two classes
are supplied.
The c()
function's methods for combining IntervalData
and IntervalList
instances was updated to the new signature IntervalDataOrIntervalList
.
The rbind()
and cbind()
functions were created in order to combine
IntervalList
and IntervalMatrix
instances by rows and columns,
respectively, through the new signature IntervalListOrIntervalMatrix
.
The arithmetic
methods were extended to the IntervalList
and
IntervalMatrix
classes by allowing to carry out the implemented operations
element by element.
The simulIVS
function's code was revised in order to reduce its execution
time.
The extract
methods were modified in order to allow to use negative integers
for indicating the elements to leave out of the selection. Some methods were
defined in order to allow to replace parts of IntervalList
and
IntervalMatrix
objects too. In particular, [<-
and [[<-
commands were
included.
Tests for code lines were developed though the testthat and vdiffr
(used specifically for plot
methods) packages. These tests provide a 100%
coverage as it was calculated by package_coverage()
function from covr
package.
Some good practice comments given by pkgcheck()
function from the
pkgcheck package motivated the following changes in the previous code:
1:nrow(data)
, 1:length(x)
, ... were avoided.
Function seq_len()
was used instead.is_single_positive_integer()
, is_single_positive_real_number()
,
is_single_real_number()
, and is_single_proportion
were created for this
purpose.sapply()
functions were avoided. Function vapply
was used
instead.Some function's documentations were corrected and improved, including more detailed examples.
DOIs were added to references (whenever they were found).
Both README.md
and NEWS.md
files were also incorporated to the package.
A logo for the IntervalQuestionStat package was also designed and included
in the man/figures/
directory.
Colors were not used in the correct way in plot()
function's methods defined
for IntervalData
and IntervalList
objects, specially when the intervals
lower and upper bounds or their mid-points were remarked. Therefore, this bug
was fixed by changing the expression
dotarguments <- match.call(expand.dots = FALSE)$...
to
dotarguments <- list(...)
.
Some default main and axis labels were misspelled in plot()
function's
methods, so they were corrected.
The xaxt
and yaxt
arguments from plot()
function's method for
signature IntervalData,IntervalData
were removed so the axis numbers
are shown.
Initial release of the IntervalQuestionStat package on the Comprehensive R Archive Network (CRAN).