Module: Statsample::SRS
- Defined in:
- lib/statsample/srs.rb
Overview
Several methods to estimate parameters for simple random sampling
Class Method Summary collapse
-
.estimation_n(d, prop, n_pobl, margin = 0.95) ⇒ Object
Sample size estimation for proportions, finite poblation.
-
.estimation_n0(d, prop, margin = 0.95) ⇒ Object
Sample size estimation for proportions, infinite poblation.
-
.fpc(sam, pop) ⇒ Object
Finite population correction (over standard deviation).
-
.fpc_var(sam, pop) ⇒ Object
Finite population correction (over variance) Source: Cochran(1972).
-
.mean_confidence_interval(mean, s, n_sample, n_population, x) ⇒ Object
Confidente interval using X.
-
.mean_confidence_interval_t(mean, s, n_sample, n_population, margin = 0.95) ⇒ Object
Confidence Interval using T-Student Use with n < 60.
-
.mean_confidence_interval_z(mean, s, n_sample, n_population, margin = 0.95) ⇒ Object
Confidente Interval using Z Use with n > 60.
-
.proportion_confidence_interval(p, sam, pop, x) ⇒ Object
Proportion confidence interval with x value Uses estimated proportion, sample without replacement.
-
.proportion_confidence_interval_t(prop, n_sample, n_population, margin = 0.95) ⇒ Object
Proportion confidence interval with t values Uses estimated proportion, sample without replacement.
-
.proportion_confidence_interval_z(p, n_sample, n_population, margin = 0.95) ⇒ Object
Proportion confidence interval with z values Uses estimated proportion, sample without replacement.
-
.proportion_sd_ep_wor(p, sam, pop) ⇒ Object
Standard deviation for sample distribution of a proportion.
-
.proportion_sd_ep_wr(p, n_sample) ⇒ Object
Standard deviation for sample distribution of a proportion Estimated proportion, sample with replacement Based on stattrek.com/Lesson6/SRS.aspx.
-
.proportion_sd_kp_wor(p, sam, pop) ⇒ Object
Standard deviation for sample distribution of a proportion Know proportion, sample without replacement.
-
.proportion_sd_kp_wr(p, n_sample) ⇒ Object
Standard deviation for sample distribution of a proportion Know proportion, sample with replacement.
-
.proportion_total_sd_ep_wor(prop, sam, pop) ⇒ Object
Total estimation sd based on sample.
-
.proportion_total_sd_kp_wor(prop, sam, pop) ⇒ Object
Total estimation sd based on sample.
-
.qf(sam, pop) ⇒ Object
Non sample fraction.
-
.standard_error_esd_wor(s, sam, pop) ⇒ Object
(also: standard_error, se)
Standard error of the mean.
-
.standard_error_ksd_wor(s, sam, pop) ⇒ Object
Standard error of the mean.
-
.standard_error_ksd_wr(s, sam, pop) ⇒ Object
(also: standard_error_esd_wr)
Standard error.
-
.standard_error_total(s, sam, pop) ⇒ Object
Standard error of total estimation.
Class Method Details
.estimation_n(d, prop, n_pobl, margin = 0.95) ⇒ Object
Sample size estimation for proportions, finite poblation.
36 37 38 39 |
# File 'lib/statsample/srs.rb', line 36 def estimation_n(d,prop,n_pobl,margin=0.95) n0=estimation_n0(d,prop,margin) n0.quo( 1 + ((n0 - 1).quo(n_pobl))) end |
.estimation_n0(d, prop, margin = 0.95) ⇒ Object
Sample size estimation for proportions, infinite poblation
30 31 32 33 34 |
# File 'lib/statsample/srs.rb', line 30 def estimation_n0(d,prop,margin=0.95) t=Distribution::Normal.p_value(1-(1-margin).quo(2)) var=prop*(1-prop) t**2*var.quo(d**2) end |
.fpc(sam, pop) ⇒ Object
Finite population correction (over standard deviation)
19 20 21 |
# File 'lib/statsample/srs.rb', line 19 def fpc(sam,pop) Math::sqrt((pop-sam).quo(pop-1)) end |
.fpc_var(sam, pop) ⇒ Object
Finite population correction (over variance) Source: Cochran(1972)
15 16 17 |
# File 'lib/statsample/srs.rb', line 15 def fpc_var(sam,pop) (pop - sam).quo(pop - 1) end |
.mean_confidence_interval(mean, s, n_sample, n_population, x) ⇒ Object
Confidente interval using X.
Better use mean_confidence_interval_z or mean_confidence_interval_t
159 160 161 162 |
# File 'lib/statsample/srs.rb', line 159 def mean_confidence_interval(mean,s,n_sample,n_population,x) range=x*se(s,n_sample,n_population) [mean-range,mean+range] end |
.mean_confidence_interval_t(mean, s, n_sample, n_population, margin = 0.95) ⇒ Object
Confidence Interval using T-Student Use with n < 60
146 147 148 149 |
# File 'lib/statsample/srs.rb', line 146 def mean_confidence_interval_t(mean,s,n_sample,n_population,margin=0.95) t=Distribution::T.p_value(1-((1-margin) / 2),n_sample-1) mean_confidence_interval(mean,s,n_sample,n_population,t) end |
.mean_confidence_interval_z(mean, s, n_sample, n_population, margin = 0.95) ⇒ Object
Confidente Interval using Z Use with n > 60
152 153 154 155 |
# File 'lib/statsample/srs.rb', line 152 def mean_confidence_interval_z(mean,s,n_sample,n_population,margin=0.95) z=Distribution::Normal.p_value(1-((1-margin) / 2)) mean_confidence_interval(mean,s,n_sample,n_population, z) end |
.proportion_confidence_interval(p, sam, pop, x) ⇒ Object
Proportion confidence interval with x value Uses estimated proportion, sample without replacement
59 60 61 62 63 |
# File 'lib/statsample/srs.rb', line 59 def proportion_confidence_interval(p, sam,pop , x) f=sam.quo(pop) one_range=x * Math::sqrt((qf(sam, pop) * p * (1-p)).quo(sam-1)) + (1.quo(sam * 2.0)) [p-one_range, p+one_range] end |
.proportion_confidence_interval_t(prop, n_sample, n_population, margin = 0.95) ⇒ Object
Proportion confidence interval with t values Uses estimated proportion, sample without replacement.
45 46 47 48 |
# File 'lib/statsample/srs.rb', line 45 def proportion_confidence_interval_t(prop, n_sample, n_population, margin=0.95) t = Distribution::T.p_value(1-((1-margin).quo(2)) , n_sample-1) proportion_confidence_interval(prop,n_sample,n_population, t) end |
.proportion_confidence_interval_z(p, n_sample, n_population, margin = 0.95) ⇒ Object
Proportion confidence interval with z values Uses estimated proportion, sample without replacement.
52 53 54 55 |
# File 'lib/statsample/srs.rb', line 52 def proportion_confidence_interval_z(p, n_sample, n_population, margin=0.95) z=Distribution::Normal.p_value(1-((1-margin).quo(2))) proportion_confidence_interval(p,n_sample,n_population, z) end |
.proportion_sd_ep_wor(p, sam, pop) ⇒ Object
Standard deviation for sample distribution of a proportion. Estimated proportion, sample without replacement. Reference:
-
Cochran, 1972, Técnicas de muestreo
89 90 91 92 |
# File 'lib/statsample/srs.rb', line 89 def proportion_sd_ep_wor(p, sam,pop) fsc=(pop-sam).quo((sam-1)*pop) Math::sqrt(fsc*p*(1-p)) end |
.proportion_sd_ep_wr(p, n_sample) ⇒ Object
Standard deviation for sample distribution of a proportion Estimated proportion, sample with replacement Based on stattrek.com/Lesson6/SRS.aspx.
82 83 84 |
# File 'lib/statsample/srs.rb', line 82 def proportion_sd_ep_wr(p, n_sample) Math::sqrt(p*(1-p).quo(n_sample-1)) end |
.proportion_sd_kp_wor(p, sam, pop) ⇒ Object
Standard deviation for sample distribution of a proportion Know proportion, sample without replacement.
Sources:
-
Cochran(1972)
76 77 78 |
# File 'lib/statsample/srs.rb', line 76 def proportion_sd_kp_wor(p, sam, pop) fpc(sam,pop)*Math::sqrt(p*(1-p).quo(sam)) end |
.proportion_sd_kp_wr(p, n_sample) ⇒ Object
Standard deviation for sample distribution of a proportion Know proportion, sample with replacement. Based on stattrek.com/Lesson6/SRS.aspx
67 68 69 |
# File 'lib/statsample/srs.rb', line 67 def proportion_sd_kp_wr(p, n_sample) Math::sqrt(p*(1-p).quo(n_sample)) end |
.proportion_total_sd_ep_wor(prop, sam, pop) ⇒ Object
Total estimation sd based on sample. Estimated proportion, sample without replacement Source: Cochran(1972)
104 105 106 107 |
# File 'lib/statsample/srs.rb', line 104 def proportion_total_sd_ep_wor(prop, sam, pop) fsc=((pop - sam).to_f / ( sam - 1)) Math::sqrt(fsc*pop*prop*(1-prop)) end |
.proportion_total_sd_kp_wor(prop, sam, pop) ⇒ Object
Total estimation sd based on sample. Known proportion, sample without replacement Reference:
-
Cochran(1972)
98 99 100 |
# File 'lib/statsample/srs.rb', line 98 def proportion_total_sd_kp_wor(prop, sam, pop) pob * proportion_sd_kp_wor(p, sam, pop) end |
.qf(sam, pop) ⇒ Object
Non sample fraction.
1 - sample fraction
26 27 28 |
# File 'lib/statsample/srs.rb', line 26 def qf(sam , pop) 1-(sam.quo(pop)) end |
.standard_error_esd_wor(s, sam, pop) ⇒ Object Also known as: standard_error, se
Standard error of the mean. Estimated variance, without replacement Cochran (1972) p.47
131 132 133 |
# File 'lib/statsample/srs.rb', line 131 def standard_error_esd_wor(s,sam,pop) s.quo(Math::sqrt(sam)) * Math::sqrt(qf(sam,pop)) end |
.standard_error_ksd_wor(s, sam, pop) ⇒ Object
Standard error of the mean. Known variance, sample w/o replacement
122 123 124 |
# File 'lib/statsample/srs.rb', line 122 def standard_error_ksd_wor(s,sam,pop) s.quo(Math::sqrt(sam)) * Math::sqrt(qf(sam,pop)) end |
.standard_error_ksd_wr(s, sam, pop) ⇒ Object Also known as: standard_error_esd_wr
Standard error. Known variance, sample with replacement.
117 118 119 |
# File 'lib/statsample/srs.rb', line 117 def standard_error_ksd_wr(s, sam, pop) s.quo(Math::sqrt(sam)) * Math::sqrt((pop-1).quo(pop)) end |
.standard_error_total(s, sam, pop) ⇒ Object
Standard error of total estimation
140 141 142 |
# File 'lib/statsample/srs.rb', line 140 def standard_error_total(s,sam,pop) pop*se(s,sam,pop) end |