Deming's funnel: Difference between revisions

added Arturo
(added Arturo)
Line 200:
Experiment ("Rule 4", Rule_4'Access);
end Demings_Funnel;</syntaxhighlight>
 
=={{header|Arturo}}==
<syntaxhighlight lang="arturo">Dxs: @[
neg 0.533, 0.270, 0.859, neg 0.043, neg 0.205, neg 0.127, neg 0.071, 0.275,
1.251, neg 0.231, neg 0.401, 0.269, 0.491, 0.951, 1.150, 0.001,
neg 0.382, 0.161, 0.915, 2.080, neg 2.337, 0.034, neg 0.126, 0.014,
0.709, 0.129, neg 1.093, neg 0.483, neg 1.193, 0.020, neg 0.051, 0.047,
neg 0.095, 0.695, 0.340, neg 0.182, 0.287, 0.213, neg 0.423, neg 0.021,
neg 0.134, 1.798, 0.021, neg 1.099, neg 0.361, 1.636, neg 1.134, 1.315,
0.201, 0.034, 0.097, neg 0.170, 0.054, neg 0.553, neg 0.024, neg 0.181,
neg 0.700, neg 0.361, neg 0.789, 0.279, neg 0.174, neg 0.009, neg 0.323, neg 0.658,
0.348, neg 0.528, 0.881, 0.021, neg 0.853, 0.157, 0.648, 1.774,
neg 1.043, 0.051, 0.021, 0.247, neg 0.310, 0.171, 0.000, 0.106,
0.024, neg 0.386, 0.962, 0.765, neg 0.125, neg 0.289, 0.521, 0.017,
0.281, neg 0.749, neg 0.149, neg 2.436, neg 0.909, 0.394, neg 0.113, neg 0.598,
0.443, neg 0.521, neg 0.799, 0.087
]
 
Dys: @[
0.136, 0.717, 0.459, neg 0.225, 1.392, 0.385, 0.121, neg 0.395,
0.490, neg 0.682, neg 0.065, 0.242, neg 0.288, 0.658, 0.459, 0.000,
0.426, 0.205, neg 0.765, neg 2.188, neg 0.742, neg 0.010, 0.089, 0.208,
0.585, 0.633, neg 0.444, neg 0.351, neg 1.087, 0.199, 0.701, 0.096,
neg 0.025, neg 0.868, 1.051, 0.157, 0.216, 0.162, 0.249, neg 0.007,
0.009, 0.508, neg 0.790, 0.723, 0.881, neg 0.508, 0.393, neg 0.226,
0.710, 0.038, neg 0.217, 0.831, 0.480, 0.407, 0.447, neg 0.295,
1.126, 0.380, 0.549, neg 0.445, neg 0.046, 0.428, neg 0.074, 0.217,
neg 0.822, 0.491, 1.347, neg 0.141, 1.230, neg 0.044, 0.079, 0.219,
0.698, 0.275, 0.056, 0.031, 0.421, 0.064, 0.721, 0.104,
neg 0.729, 0.650, neg 1.103, 0.154, neg 1.720, 0.051, neg 0.385, 0.477,
1.537, neg 0.901, 0.939, neg 0.411, 0.341, neg 0.411, 0.106, 0.224,
neg 0.947, neg 1.424, neg 0.542, neg 1.032
]
 
funnel: function [a, rule][
x: 0.0
result: []
loop a 'val [
'result ++ x + val
x: do rule
]
return result
]
 
formatFloat: function [f]->
to :string .format:"7.4f" f
 
experiment: function [label, rule][
rxs: funnel Dxs rule
rys: funnel Dys rule
 
print label
print repeat "=" 30
print ["Mean x,y :" formatFloat average rxs, formatFloat average rys]
print ["Std.dev x,y :" formatFloat deviation rxs, formatFloat deviation rys]
print ""
]
 
experiment "Rule 1" [0.0]
experiment "Rule 2" [neg val]
experiment "Rule 3" [neg x + val]
experiment "Rule 4" [x + val]</syntaxhighlight>
 
{{out}}
 
<pre>Rule 1
==============================
Mean x,y : 0.0004 0.0702
Std.dev x,y : 0.7153 0.6462
 
Rule 2
==============================
Mean x,y : 0.0009 -0.0103
Std.dev x,y : 1.0371 0.8999
 
Rule 3
==============================
Mean x,y : 0.0439 -0.0063
Std.dev x,y : 7.9871 4.7784
 
Rule 4
==============================
Mean x,y : 3.1341 5.4210
Std.dev x,y : 1.5874 3.9304</pre>
 
=={{header|D}}==
1,532

edits