This file demonstrates the application of rOpenSci ’s standards for statistical software to one Unsupervised Learning software package. These applications are not intended to represent or reflect evaluations or assessment of the packages, and particularly not of the extent to which they fail to meet standards. Rather, the demonstrations are intended to highlight aspects of the software which could be productively improved by adhering to the standards, and thereby more generally to demonstrate the general usefulness of these standards in advancing and improving software quality.
mbkmeans
match.arg()
is not used, and would yield more
sensible errorstolower()
or equivalent is not used, and would
yield more sensible errorsinteger
via
as.integer()
, and should be (for example for clusters
, which
is ultimately implicitly converted by being passed as an
assumed C++
<int>
).as.numeric()
as.character()
(for example for reduceMethod
).factor
type, so not
applicablematrix
, and so do not use
list columns, therefore not applicable.mini_batch
routine), where uninformative errors are generated.iris
).NA
fields or columns
or all identical fields or columnsmatrix
only, so row or column
names not used, and these standards not applicable.mini_batch
, for
example).
mini_batch
, for example).mbkmeans()
).print
method for objects returned
from main functions.
print
method fails to ensure only a restricted number of rows of any
result matrices or equivalent are printed to the screen.summary.list
methods for return objects are
arguably sufficient here (although a non-default method would enable
more informative summary
data to be generated).plot
methods.Standards | Total Number | Pass | Not Applicable | Fail |
---|---|---|---|---|
General | 28 | 5 | 7 | 16 |
UL | 24 | 2 | 6 | 16 |
autotest
outputCurrent autotest
only produces output where issues arises. This is a
relatively very clean response, none of which ought be considered
particularly important, except perhaps for the notes about missing
documentation on permitted parameter ranges.
clusters
responds to integer values in [1, 110]batch_size
responds to integer values in [1, 110]max_iters
permits unrestricted integer inputsinitializer
of function mini_batch
is assumed to a
single character, but is case dependentcompute_labels
of function mini_batch
is assumed to be
logical, but responds to general integer values.calc_wcss
of function mini_batch
is assumed to be
logical, but responds to general integer values.early_stop_iter
responds to integer values in [1, 28]early_stop_iter
is NOT documentedmini_batch
is assumed to be logical,
but responds to general integer values.