1
1

「gawkで基本 統計(49)量を計算する」をdocker(79)で

Last updated at Posted at 2019-08-29

gawkで基本統計量を計算する
https://qiita.com/EjiriAkira/items/e92e919bb9ee1c52b7ae

をdockerで利用してみた。

それだけでは芸がない。自分のデータで分析もしてみる。

スクリプトの1つが、ファイル名固定になっているのに手を入れ、ファイル入力する方式にした。

bas.sh
#!/bin/bash
# https://qiita.com/EjiriAkira/items/e92e919bb9ee1c52b7ae
# https://qiita.com/kaizen_nagoya/items/c362cb343a412fe12d46
. ./basic_statistics.sh
IFS=',' read n min max med ave sum svar uvar ssd usd skew kurt text <<< $(calc_basic_statistics $1)
echo "=============================="
printf "n = %d\n" ${n}
printf "min = %G\n" ${min}
printf "max = %G\n" ${max}
printf "med = %G\n" ${med}
printf "ave = %G\n" ${ave}
printf "sum = %G\n" ${sum}
printf "svar = %G\n" ${svar}
printf "uvar = %G\n" ${uvar}
printf "ssd = %G\n" ${ssd}
printf "usd = %G\n" ${usd}
printf "skew = %G\n" ${skew}
printf "kurt = %G\n" ${kurt}
echo "=============================="
printf "${text}"
echo "=============================="
echo -n -e "${text}"

上記ファイルで$1のところ。

データは自分のqiitaの書き込みの20件ごとのいいねの数の分布を用いた。

d50.txt
14
5
6
15
13
6
8
9
8
6
8
9
12
15
14
13
10
15
11
7
15
12
10
10
6
9
9
8
6
4
6
6
11
8
14
15
12
14
10
10
5
8
12
12
15
11
11
7
14
12

25までのデータ、12までのデータファイルも用意。

# ./bas.sh d12.txt
==============================
n = 12
min = 5
max = 15
med = 8
ave = 8.91667
sum = 107
svar = 10.2431
uvar = 11.1742
ssd = 3.20048
usd = 3.34279
skew = 0.840341
kurt = -0.537908
==============================
n=12
min=5
max=15
med=8
ave=8.91667
sum=107
svar=10.2431
uvar=11.1742
ssd=3.20048
usd=3.34279
skew=0.840341
kurt=-0.537908
==============================
n=12
min=5
max=15
med=8
ave=8.91667
sum=107
svar=10.2431
uvar=11.1742
ssd=3.20048
usd=3.34279
skew=0.840341
kurt=-0.537908
# ./bas.sh d25.txt
==============================
n = 25
min = 5
max = 15
med = 10
ave = 10.28
sum = 257
svar = 10.7616
uvar = 11.21
ssd = 3.28049
usd = 3.34813
skew = 0.0464061
kurt = -1.36321
==============================
n=25
min=5
max=15
med=10
ave=10.28
sum=257
svar=10.7616
uvar=11.21
ssd=3.28049
usd=3.34813
skew=0.0464061
kurt=-1.36321
==============================
n=25
min=5
max=15
med=10
ave=10.28
sum=257
svar=10.7616
uvar=11.21
ssd=3.28049
usd=3.34813
skew=0.0464061
kurt=-1.36321
# ./bas.sh d50.txt
==============================
n = 50
min = 4
max = 15
med = 10
ave = 10.12
sum = 506
svar = 10.3856
uvar = 10.5976
ssd = 3.22267
usd = 3.25539
skew = -0.0191191
kurt = -1.16719
==============================
n=50
min=4
max=15
med=10
ave=10.12
sum=506
svar=10.3856
uvar=10.5976
ssd=3.22267
usd=3.25539
skew=-0.0191191
kurt=-1.16719
==============================
n=50
min=4
max=15
med=10
ave=10.12
sum=506
svar=10.3856
uvar=10.5976
ssd=3.22267
usd=3.25539
skew=-0.0191191
kurt=-1.16719

#docker

起動は

$ docker run -it kaizenjapan/gawk -bin/bash

で利用できる。dockerに入ったら、

docker/ubuntu
# cd /home/awk

#Excelとの比較

エクセルでの結果は

50 25 12
14
5
6
15
13
6
8
9
8
6
8
9
12
15
14
13
10
15
11
7
15
12
10
10
6
9 14
9 5
8 6
6 15
4 13
6 6
6 8
11 9
8 8
14 6
15 8
12 9
14 12
10 15 14
10 14 5
5 13 6
8 10 15
12 15 13
12 11 6
15 7 8
11 15 9
11 12 8
7 10 6
14 10 8
12 6 9
合計 506 合計 257 合計 107
平均 10.12 平均 10.28 平均 8.916666667
範囲 11 範囲 10 範囲 10
最小 4 最小 5 最小 5
最大 15 最大 15 最大 15
標準誤差 0.45575432 標準誤差 0.656097554 標準誤差 0.923898243
中央値 10 中央値 10 中央値 8
最頻値 6 最頻値 6 最頻値 6
標準偏差 3.222669701 標準偏差 3.280487769 標準偏差 3.200477395
分散 10.3856 分散 10.7616 分散 10.24305556
尖度 -1.167191039 尖度 -1.36321223 尖度 -0.537907774
歪度 -0.01911908 歪度 0.046406059 歪度 0.840341472

元資料に記載がみあたらない計算式は

範囲 =MAX(B1:B50)-MIN(B1:B50)
標準誤差 =STDEVP(B1:B50)/SQRT(COUNT(B1:B50))

#考察
記事のいいねがついている数の範囲にぶれがあまりない。20づつのまとまりごとに、12、25、50を比べているから見えた現象の可能性がある。まとまりを変えると違う現象が見えてくるかもしれない。

6から9がつづいたり、10以上がつづいたりのぶれがあり、この周期による影響もあるかもしれない。

いいねがついた記事を先に追記するため、いいねがつかなかった記事はなかなか良くならないという傾向がある。
100viewsでいいねがついていない記事は追記するようにしている。
いいねがついた記事への追記を優先させているかもしれない。

平均より中央値が低く、最頻値がもっと低いのは、ときどき突出した数値を叩き出すものがある分類によくある現象。

Qiita(6)行動分類
https://qiita.com/kaizen_nagoya/items/dc683fc6c054e3c187df
Qiita(7)投稿
https://qiita.com/kaizen_nagoya/items/456b8d0d27806543615b
Qiita(8)週5回の確認作業の流れ
https://qiita.com/kaizen_nagoya/items/592e5eed915fbbc3e0ff
Qiita(11)「Qiitaいいな〜自分のいいね分析」自分版
https://qiita.com/kaizen_nagoya/items/11955909b0302d9ba999
Qiita(13)なぜ少しづつQiitaの記事を追記しているか
https://qiita.com/kaizen_nagoya/items/fa8b102a92d094437416

Qiita(16)Qiita記事 いいね と views の関係
https://qiita.com/kaizen_nagoya/items/d30240b2a9adec288ca

Qiita(18)記事を書くときに注意していること
https://qiita.com/kaizen_nagoya/items/3a6e08309231aa05fb27
Qiita(23)書きかけの項目の一覧を書きかけ
https://qiita.com/kaizen_nagoya/items/45db8672c1081c1e78e1

Qiita(27)views一覧を作るまで(第一日目)
https://qiita.com/kaizen_nagoya/items/7de46ac898e776834605Qiita(35) Qiita: いいね, follow, follower, ストック, views
https://qiita.com/kaizen_nagoya/items/1f0c56ebd05c5495f72e

参考資料

エクセルでの標準誤差の計算方法
http://www.ipc.shimane-u.ac.jp/food/kobayasi/se_excel.html

=stdev(データ範囲)/sqrt(count(データ範囲))

標準誤差の計算
http://hp.brs.nihon-u.ac.jp/~kaki/dat_arr_xls_se.html

=stdevp(データ範囲)/sqrt(count(データ範囲))

【Excel】エクセルで標準誤差を計算する方法 標準誤差と標準偏差との違い
http://kenkou888.com/category13/excel_hyoujungosa.html

データそのものの標準偏差を求めるために、STDEVP関数を使用します。なお、STDEV関数やSTDEV.S関数は標本から母集団の標準偏差を予想するときにします。

一覧

物理記事 上位100
https://qiita.com/kaizen_nagoya/items/66e90fe31fbe3facc6ff

量子(0) 計算機, 量子力学
https://qiita.com/kaizen_nagoya/items/1cd954cb0eed92879fd4

数学関連記事100
https://qiita.com/kaizen_nagoya/items/d8dadb49a6397e854c6d

言語・文学記事 100
https://qiita.com/kaizen_nagoya/items/42d58d5ef7fb53c407d6

医工連携関連記事一覧
https://qiita.com/kaizen_nagoya/items/6ab51c12ba51bc260a82

自動車 記事 100
https://qiita.com/kaizen_nagoya/items/f7f0b9ab36569ad409c5

通信記事100
https://qiita.com/kaizen_nagoya/items/1d67de5e1cd207b05ef7

日本語(0)一欄
https://qiita.com/kaizen_nagoya/items/7498dcfa3a9ba7fd1e68

英語(0) 一覧
https://qiita.com/kaizen_nagoya/items/680e3f5cbf9430486c7d

転職(0)一覧
https://qiita.com/kaizen_nagoya/items/f77520d378d33451d6fe

仮説(0)一覧(目標100現在40)
https://qiita.com/kaizen_nagoya/items/f000506fe1837b3590df

Qiita(0)Qiita関連記事一覧(自分)
https://qiita.com/kaizen_nagoya/items/58db5fbf036b28e9dfa6

鉄道(0)鉄道のシステム考察はてっちゃんがてつだってくれる
https://qiita.com/kaizen_nagoya/items/26bda595f341a27901a0

安全(0)安全工学シンポジウムに向けて: 21
https://qiita.com/kaizen_nagoya/items/c5d78f3def8195cb2409

一覧の一覧( The directory of directories of mine.) Qiita(100)
https://qiita.com/kaizen_nagoya/items/7eb0e006543886138f39

Ethernet 記事一覧 Ethernet(0)
https://qiita.com/kaizen_nagoya/items/88d35e99f74aefc98794

Wireshark 一覧 wireshark(0)、Ethernet(48)
https://qiita.com/kaizen_nagoya/items/fbed841f61875c4731d0

線網(Wi-Fi)空中線(antenna)(0) 記事一覧(118/300目標)
https://qiita.com/kaizen_nagoya/items/5e5464ac2b24bd4cd001

OSEK OS設計の基礎 OSEK(100)
https://qiita.com/kaizen_nagoya/items/7528a22a14242d2d58a3

Error一覧 error(0)
https://qiita.com/kaizen_nagoya/items/48b6cbc8d68eae2c42b8

プログラマによる、プログラマのための、統計(0)と確率のプログラミングとその後
https://qiita.com/kaizen_nagoya/items/6e9897eb641268766909

官公庁・学校・公的団体(NPOを含む)システムの課題、官(0)
https://qiita.com/kaizen_nagoya/items/04ee6eaf7ec13d3af4c3

「はじめての」シリーズ  ベクタージャパン 
https://qiita.com/kaizen_nagoya/items/2e41634f6e21a3cf74eb

AUTOSAR(0)Qiita記事一覧, OSEK(75)
https://qiita.com/kaizen_nagoya/items/89c07961b59a8754c869

プログラマが知っていると良い「公序良俗」
https://qiita.com/kaizen_nagoya/items/9fe7c0dfac2fbd77a945

LaTeX(0) 一覧 
https://qiita.com/kaizen_nagoya/items/e3f7dafacab58c499792

自動制御、制御工学一覧(0)
https://qiita.com/kaizen_nagoya/items/7767a4e19a6ae1479e6b

Rust(0) 一覧 
https://qiita.com/kaizen_nagoya/items/5e8bb080ba6ca0281927

小川清最終講義、最終講義(再)計画, Ethernet(100) 英語(100) 安全(100)
https://qiita.com/kaizen_nagoya/items/e2df642e3951e35e6a53

<この記事は個人の過去の経験に基づく個人の感想です。現在所属する組織、業務とは関係がありません。>
This article is an individual impression based on the individual's experience. It has nothing to do with the organization or business to which I currently belong.

文書履歴(document history)

ver. 0.01 初稿 20180829 朝
ver. 0.02 追記 20180829 午前
ver. 0.03 考察追記 20180829 午後

最後までおよみいただきありがとうございました。

いいね 💚、フォローをお願いします。

Thank you very much for reading to the last sentence.

Please press the like icon 💚 and follow me for your happy life.

このエントリーをはてなブックマークに追加
https://b.hatena.ne.jp/guide/bbutton

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1