Bug fixes
New features
fairness_selection() to aid in the decision betweenfairness metrics. The function has an accompanyingprint()andplot() method.plot(x, type = "sequential") to theevaluation() function when used withprior,materiality anddata. The plot shows Bayesfactors as a function of the sample size.Bug fixes
evaluation() function usingmethod = "hypergeometric" where the user could providebroken taints. These taints are now rounded to the nearest integervalue.Minor changes
auditPrior() function,method = "factor" has been replaced withmethod = "power" to be consistent with existingterminology.selection() now always performs sampling withreplacement when usingitems = "values" andmethod = "random" (Thanks toNew features
planning() function. This can be done byproviding a vector of integers to theexpected argumentthat specifies the intended sampling plan. For instance,expected = c(1, 0) gives the sample size for a two-stagesampling plan in which the auditor is allowed to extend the initialsample after finding one misstatement and is allowed to approve thepopulation if the initial sample contains no misstatements.method = "inflated.poisson" andmethod = "hurdle.beta". Since these methods rely on mcmcsampling, they can take any form of prior. They can also be fitted usingmaximum likelihood estimation withprior = FALSE.Minor changes
type = "estimates" is nowthe default option.Major changes
report() function as it did not align withthe rest of the functionality in the package.Bug fixes
selection() where the numeric data inthe sample was returned as character if the original data was entered ascharacter only (i.e.,selection(data.frame(x = c("hello", "bye", "hi")), size = 2)).N.units is now only taken from the prior if the userdoes not provide it manually to theplanning() andevaluation() functions.New features
model_fairness() to computefairness metrics for algorithm auditing on the basis of predictions ofan algorithm.Minor changes
evaluation() function, the typical stringerbound has been changed frommethod = "stringer" tomethod = "stringer.binomial". Furthermore, additionalmethodsstringer.poisson andstringer.hypergeometric are added that apply the stringerbound using the Poisson and hypergeometric distributions, respectively.Thestringer method will remain for now but redirect tostringer.binomial.rstantools 2.3.1.New features
digit_test() function now returns elementestimates containing observed proportions and theircorresponding confidence intervals. The plot output also shows theseintervals around the estimates.Bug fixes
New features
evaluation() function.digitTestspackage via thedigit_test() andrepeated_test() functions.Bug fixes
summary(selection) was displayed incorrectly.Minor changes
Minor changes
Warning: <img> attribute "align" not allowed for HTML5.R 4.2.0.Minor changes
x inevaluation() andexpected inplanning() is now automaticallyceiled (while throwing a warning) formethod = "hypergeometric".Major changes
jfaPredictive. The probabilities for the prior andposterior predictive distributions can be obtained by calling thepredict() function.Minor changes
N.units inauditPrior(),planning(), andevaluation() is nowautomatically ceiled forlikelihood/method ='hypergeometric'.likelihood intheprior does not match with thelikelihood/method inputs forplanning() andevaluation(). The likelihoodfrom the prior is leading in these cases and will overrule the otheroptions.New features
randomize to theselection() function, which allows the user to randomlyshuffle the items in the population before selection. Note thatspecifyingrandomize = TRUE overrulesorder.Bug fixes
planning stopped atmax - 1).Major changes
order argument inselection() nolonger accepts a logical, but instead takes the column name of theranking variable in thedata.Minor changes
New features
alternative with possible optionsless (default),two.sided, andgreater to theevaluation() function thatallows control over the type of hypothesis test to perform and the typeof confidence / credible interval to calculate.predict.jfaPrior() andpredict.jfaPosterior() that produce predictions for thedata under the prior or posterior distribution.method = 'param' to functionauditPrior() which takes as input the rawalpha andbeta parameters of the priordistribution.method = 'strict' to functionauditPrior() which constructs an (improper) priordistribution that yields the same results (with respect to sample sizesand upper limits) as classical procedures.method = 'sieve') toselection().jfa.auditPrior(),planning(), andevaluation() now contain information about the posteriorpredictive distribution whenN.units is specified.Major changes
jfa 0.5.7 tojfa 0.6.0 there has beena major overhaul in the names of function arguments. This is done sothat the calls integrate better with general R syntax and the packagegets more user-friendly. I apologize for any inconvenience this maycause. The following names have been changed:median ->impartial (inauditPrior())sampleK ->x (inauditPrior())sampleN ->n (inauditPrior())N ->N.units (inauditPrior())maxSize ->max (inplanning())increase ->by (inplanning())withReplacement->replace (inselection())ordered ->order (inselection())ascending ->decreasing (inselection())intervalStartingPoint ->start (inselection())algorithm ->method (inselection())expectedErrors ->expected (inauditPrior() andplanning())confidence ->conf.level (inauditPrior(),planning(), andevaluation())pHmin ->p.hmin (inauditPrior())minPrecision ->min.precision (inauditPrior(),planning(), andevaluation())population ->data (inselection())kSumstats ->x (inevaluation())nSumstats ->n (inevaluation())sample ->data (inevaluation())bookValues ->values (inselection() andevaluation())auditValues ->values.audit (inevaluation())counts ->times (inevaluation())popBookValues ->N.units (inevaluation())rohrbachDelta ->r.delta (inevaluation())momentPopType ->m.type (inevaluation())csA ->cs.a (inevaluation())csB ->cs.b (inevaluation())csMu ->cs.mu (inevaluation())records ->items (inselection())mus ->values (inselection())hypotheses ->hyp (inauditPrior())poisson is now the default likelihood / method for allfunctions since it is the most conservative.method = 'interval' is now the default selectionmethod.method = 'default' orprior = TRUE are now setto thegamma(1, 1),beta(1,1), andbeta-binomial(1, 1) priors.times (formercounts) argument inevaluation() must now be indicated as a column name in thedata instead of a vector.nPrior andkPrior have been removed fromtheplanning() andevaluation() functions. Allprior distributions must now be specified usingprior = TRUE (noninformative priors) or using a call toauditPrior().auditBF() function since its value isavailable throughevaluation(materiality = x, prior = auditPrior(method = 'impartial', materiality = x))Minor changes
x andn to have thesame value inevaluation().Minor changes
?jfa-package helpfile.Bug fixes
print.jfaEvaluation() call if therewas no performance materiality specified andprior = TRUE.New features
print() functions now return a more concisedescription of the relevant output.summary() functions for all returned objects thattake over the former (elaborate) output of theprint()functions.auditBF() which computesBayes factors from summary statistics of an audit sample.Bug fixes
evaluation() in which the likelihoodstored in the prior was not properly passed to the function.Minor changes
New features
jfaPosterior as returned byevaluation()$posterior andplanning()$expectedPosterior can now be used as input fortheprior argument in theplanning() andevaluation() functions.Bug fixes
method = 'bram' in theauditPrior() function where the prior parameters would gooff to infinity whenexpectedError = 0.Major changes
planning() function does notrequire a value for themateriality anymore when planningwith thehypergeometric likelihood.Minor changes
MUS package to the unittests.New features
expectedErrors > 0 available formethod = 'hypotheses' in theauditPrior()function.method = 'hypotheses' andmethod = 'impartial' in theauditPrior()function available forlikelihood = 'hypergeometric'.bram as a method for theauditPrior() function.method = 'bram'computes a prior distribution with a given mode(expectedError) and upper bound (ub).Bug fixes
evaluation() function in which+1 wasadded to the beta parameter, resulting in slightly lower modes than thecorrect ones.N has the correctvalue ofN = N - n (current) instead ofN - n + k (before).Major changes
confidence = 0.95 in allapplicable functions.confidence currently has no defaultvalue so that the user is required to give an input.likelihood = 'poisson' in theplanning() function tolikelihood = 'binomial'to be consistent across all functions.materiality andminPrecision are among thefirst ones to be shown.Minor changes
New features
Bug fixes
phyper() function instead oftheqhyper() function, which resulted in lower bounds thanusual.Minor changes
Bug fixes
selection() where ifpopulation is sorted or modified,bv stillretained the old ordering and data. The resulting sample wasoverweighted towards small values and/or still contained negative values(Thanks toNew features
report() that automatically generates anaudit report.Major changes
sampling() function, which is now replacedentirely with theselection() function.evaluation() function when anestimator is used.New features
digits argument in the internaljfa:::print.jfaPrior(),jfa:::print.jfaPlanning(),jfa:::print.jfaSelection(), andjfa:::print.jfaEvaluation() functions to control roundingin printing.description,statistics,specifics andhypotheses to the output of theauditPrior() function.jfaPosterior withprint() andplot() methods.expectedPosterior of classjfaPosterior to the output of theplanning()function, includesdescription,statistics andhypotheses.posterior of classjfaPosterior tothe output of theevaluation() function, includesdescription,statistics andhypotheses.Bug fixes
auditPrior() function formethod = impartialwhenexpectedErrors > 0.Major changes
sampling() function thatit will be deprecated from 0.5.0 onward. You can useselection() instead, sincesampling() causesnamespace issues with other packages.Minor changes
jfaSampling tojfaSelection. This should not have any consequences.Bug fixes
planning() function that did notallow the user to plan for a monetary sample when their population sizewas too low.planning() function that did notallow the user to select a non-integer number of expected errors whenthere was a prior involved.Minor changes
planning() andevaluation() functions againstbenchmarks.New features
counts in theevaluation() function that quantifies how many times eachobservation should be evaluated due to being selected multiple times inthe selection stage.New features
default,impartial,hypotheses,sample,andfactor in theauditPrior() function. Inaddition to the already supportedarm method, these methodsallow the auditor to incorporate more sources of audit information intothe prior distribution.minPrecision argument in theplanning() function that allows auditors to calculate asample size so that the difference between the posterior upperconfidence bound and the most likely error is lower than the set minimumprecision. Also implemented in theevaluation() function asa requirement to approve the population.mle from theevaluation()function, which quantifies the most likely error. Also return the valueof theprecision from this function.increase argument in theplanning() function that allows the user to increase thesample size with a set amount each step of the iterations.Minor changes
New features
jfa package. The package providesfour functions:auditPrior(),planning(),sampling(), andevaluation().