学習環境
- Surface 3 (4G LTE)、Surface 3 タイプ カバー、Surface ペン(端末)
- Windows 10 Pro (OS)
- 数式入力ソフト(TeX, MathML): MathType
- MathML対応ブラウザ: Firefox、Safari
- MathML非対応ブラウザ(Internet Explorer, Microsoft Edge, Google Chrome...)用JavaScript Library: MathJax
- 参考書籍
Head First Statistics (Dawn Griffiths (著)、黒川 利明 (翻訳)、木下 哲也 (翻訳)、黒川 洋 (翻訳)、黒川 めぐみ (翻訳)、オライリージャパン)の3章(ばらつきと広がりを測る)、監督になってみよう(p. 114)を取り組んでみる。
監督になってみよう(p. 114)
標準偏差がもっと小さい、選手1が最も頼りになる。
コード(Emacs)
HTML5
<pre id="output0"></pre> <button id="run">run</button> <button id="clear0">clear</button> <script src="sample5.js"></script>
JavaScript
let pre0 = document.querySelector('#output0'), btn0 = document.querySelector('#run'), btn1 = document.querySelector('#clear0'), p = (x) => pre0.textContent += x + '\n', range = (start, end, step=1) => { let res = []; for (let i = start; i < end; i += step) { res.push(i); } return res; }; let data1 = {7:1, 9:2, 10:4, 11:2, 13:1}, data2 = {7:1, 8:1, 9:2, 10:2, 11:2, 12:1, 13:1}, data3 = {3:2, 6:1, 7:2, 10:3, 11:1, 13:1, 30:1}, dataToNums = (data) => { return Object.entries(data) .reduce((prev, [point, n]) => prev.concat(range(0, n).map(() => point)), []); }, variance = (nums) => { return nums .reduce((prev, next) => prev + (next - 10) ** 2, 0) / nums.length; }, standardDeviation = (nums) => Math.sqrt(variance(nums)); let output = () => { [data1, data2, data3].forEach((data, i) => { p(`${i + 1}.`); p(`分散: ${variance(dataToNums(data))}`); p(`標準偏差: ${standardDeviation(dataToNums(data))}`); }); }; btn0.onclick = output; btn1.onclick = () => pre0.textContent = ''; output();
0 コメント:
コメントを投稿