A function for the sequential estimation of the coefficient of variations with minimum risk. The function implements the ideas of Chattopadhyay and Kelley (in press), which considers study cost and accuracy of the estimated coefficient of variation simultaneously.
1 2 
data 
the data for which to evalaute the function 
A 

structural.cost 
this is the the structural cost of what one is willing to pay in a study (see note below). 
epsilon 
The maximum desired difference between the estimated coefficient of variation and the population value) 
sampling.cost 
The sampling cost to collect an additional observation. For example, if each survey costs 10 dollars to distribute and score, 
pilot 

m0 
the minimum bound on the initial pilot sample size 
gamma 
A correction factor in which we suggest .49; see the two Chattopadhyay & Kelley articles for more details (ignorable for most users). 
verbose 
If 
The value of epsilon
is context specific; the smaller the value the closer the estimated value will tend to be to the population value.
Risk 
The value of the risk function 
N 
The current sample size 
cv 
The current coefficient of variation 
Is.Satisfied? 
A TRUE/FALSE statement of whether or not the risk function has been satisfied. If TRUE then sampling can stop as the stopping rule has been satisfied. 
When a study's aim is to estimate a parameter accurately, such as the coefficient of variation, the structural costs and the maximum probable error of the estimate (i.e., ε) are combined to form A. When we say “what the researcher is willing to pay," we literally mean the structural cost (c) the researcher is willing to invest in a study in order to estimate the parameter of interest with the desired degree of accuracy. This value is implicitly included (along with anticipated sampling cost) in grant applications for empirical studies when a certain amount of money is requested to conduct a study. If a researcher is willing to pay more and/or desire a smaller value of ε, A is larger than it would have been. A larger A value will translate into a more expensive study, holding everything else constant. Notice that A is a fixed value in any investigation, as the researcher specifies A directly or by specifying its two components (structural cost and ε) individually. However, what is not fixed but rather evaluated in multiple steps throughout the process is the sampling cost, as it is unknown the necessary sample size in order to accomplish the study's goal of achieving a sufficiently accurate estimate of the coefficient of variation. This is the core of our contributions: minimizing sampling cost, and thereby study cost, by using a sequential procedure that evaluates a stopping rule using the risk function to determine if the optimation criterion has been satisfied (based on the goals of the researcher and current information available). This function implements the ideas of sampling error and the study costs are considered simultaneously, so that the cost is not higher than necessary for the tolerable sampling error.
Ken Kelley (University of Notre Dame; kkelley@nd.edu) and Bhargab Chattopadhyay (University of Texas  Dallas; bhargab@utdallas.edu)
Chattopadhyay, B., & Kelley, K. (in press). Estimation of the Coefficient of Variation with Minimum Risk: A Sequential Method for Minimizing Sampling Error and Study Cost. Multivariate Behavioral Research, X, X–X.
Kelley, K. (2007). Sample size planning for the coefficient of variation from the accuracy in parameter estimation approach. Behavior Research Methods, 39 4, 755–766.
ci.cv
, cv
, mr.smd
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17  # Determine pilot sample size:
mr.cv(pilot=TRUE, A=400000, sampling.cost=75, gamma=.49)
# Collect data (the size of which is the pilot sample size)
Data < c(36, 53, 19, 11, 10, 24, 14, 65, 18, 48, 25, 35, 13, 18, 3, 41, 5, 3)
# Use mr.cv() to assess if the criterion for stopping the sequential study has been satisfied:
mr.cv(data=Data, A=400000, sampling.cost=75, gamma=.49)
# Collect another data (m=1 here) and perform another check:
Data < c(Data, 44)
mr.cv(data=Data, A=400000, sampling.cost=75, gamma=.49)
# Continue adding obervations, checking each time if m=1, until the minimum risk criteria
# are satisfied:
Data < c(Data, 26, 13, 39, 2, 3, 26, 22, 8, 15, 12, 22, 5, 21, 23, 40, 18)
mr.cv(data=Data, A=400000, sampling.cost=75, gamma=.49)

Questions? Problems? Suggestions? Tweet to @rdrrHQ or email at ian@mutexlabs.com.
All documentation is copyright its authors; we didn't write any of that.