第4回目 ヒストグラム 正規分布図を描く(2020-07-30 12:31:48)

第4回目 ヒストグラム 正規分布図を描くの編集履歴一覧へ戻る

2020-07-30 12:31:48更新でのソースとプレビューを表示しています。


プレビューを確認する


ソース

*** このページの変更記録
-7/30 12:30 公開 
-7/30 xx:xx 誤字訂正
-7/30 xx:xx 課題報告の仕方修正

第4回課題実施報告の締め切りは,8/5 とします。
(締め切りに遅れても受付はします)

課題報告メールの件名は
A-303xxxx-04 名前(漢字名がのぞましい)
のように,してください。名前以外は,必ず,半角文字を使用してください。
最初は,A or B で,クラス(A, B は,大文字で半角文字を守ること)
次の数字は,学生番号(y303xxxx) なら,&bold(){303xxxx の7桁}とすること
最後は,報告する授業の回数です。01 から 15  まであります。
間の - は,半角のマイナス記号です。

----
教科書『Python Pocket Reference』
⇒ 教科書 p.数字,と書いてあれば,そこをみて,印をつけておくことをおすすめ。
&color(#FF0000){この講義では,自分のために役立つプログラムを作成できるようにする。料理でいうと,自炊ができるレベルを目指す。}

*初期化プログラム
⇒ [[Python の動かし方]]
講義では,Jupyter Notebook を利用する。以下を見ておくとよい。
[[これでわかる!!Jupyter Notebook超入門(16分)@Youtube>https://www.youtube.com/watch?v=4RjIa8mlmXg]]

<pre>
#初期化プログラム。動作確認を含めて,プログラム作成のとき1度実行しておく
from math import * # math モジュールを利用する
from matplotlib.pyplot import * #グラフ関係を利用する
%matplotlib inline
from numpy import * #ベクトル演算,行列演算を効率化 
from scipy.stats import norm #正規分布の計算
pi # πの値が表示されたら,正常動作している
# 課題提出するときは,初期化プログラムをつける必要なし
</pre>

*データを用意する
<pre>
#身長のデータ 2019年度授業参加大学2年男子から40人
H = array((
        183, 178, 173, 178, 168, 
        181, 180, 165, 180, 165,
        177, 179, 169, 165, 175, 
        170, 167, 170, 185, 170,
        163, 171, 163, 166, 169,
        169, 160, 160, 163, 167,
        170, 178, 174, 177, 164,
        167, 165, 170, 184, 174
    ))
type(H), H[0:4] # データの型名と最初部分を表示して,確認
</pre>

*主な統計値をみる
<pre>
#最小値,最大値,平均,標準偏差
min(H), max(H), mean(H), std(H)
</pre>

*それぞれどこで書いてあるの?
<pre>
#それぞれ,計算する命令として,
#min( ), max( ), mean( ), std( )関数を使用した。
#通常,Python 言語では,命令は,関数の形式で書かれる。
#この関数は,どこで定義されているか?
#それぞれの__module__という特殊な変数で見ることができる。
min.__module__, max.__module__, mean.__module__, std.__module__
</pre>

 bulitins は,組み込みのもの(複数形のS付き)。最初から組み込まれているもの。車でいうとボティやタイヤに相当。mean( ) は,numpy モジュールと定義してある。車でいうとオプションにあたる。初期化のプログラムで,import  宣言をして,利用可能としている。車でいうとオプションにあたるクーラやラジカセ。import せずに使用できない。

*ヒストグラムと正規分図曲線を表示しよう。

<pre>
#ヒストグラムを2つ表示する
hist(H, bins=15, color='red') #区分数,色など指定できる
show() #グラフを表示する。ないと,プログラムの最後に表示する。
hist(H) #パラメータを省略すると,適当に処理される
</pre>

データが正規分布と無関係でも,強制的に正規分布のデータを作ってみる。
<pre>
#平均,標準偏差から,正規分布を強制的に作成する
#X 軸の値を生成。平均から±標準偏差*3
X = arange(mean(H)-3*std(H), mean(H)+3*std(H), 0.1)
#確率密度関数(X,平均、標準偏差)
Y = norm.pdf(X, mean(H), std(H))
plot(X, Y, color='red') #折れ線を使って表示
</pre>

** ヒストグラムと正規分布曲線を重ねて表示する
<pre>
#ヒストグラムに正規分布曲線を重ねる
#平均,標準偏差から,正規分布を強制的に作成する
#X 軸の値を生成。平均から±標準偏差*3
X = arange(mean(H)-3*std(H), mean(H)+3*std(H), 0.1)
#確率密度関数(X,平均、標準偏差)
Y = norm.pdf(X, mean(H), std(H))
HD = hist(H, color='blue')
r = max(HD[0])/0.06 #ヒストグラムと曲線のトップをあわせる比率
plot(X, Y*r, color='red') #折れ線を使って表示
</pre>


*課題
適当な数字を4つ,タプル型変数に代入し,それを * 3 をしてみる
また,その4つの数字を numpy.array変数に代入し,* 3 をしてみる 

**課題報告は
-課題を実施した感想,あれば質問
それに加えて

命令(関数)は,それぞれモジュールに保管されていることを理解した。

と書き
試したプログラムも書いてください。
今回,変数名の H は,必ず変更すること。

(投稿された他の学生のものはコピーして修正しないこと。これをやると伝言ゲームのようにだんだんおかしなプログラムになる)

#hr
**登場した用語
モジュール

**質問と返答
講義への質問は,suehiro3721p@gmail.com まで

** 講義メモ(先生のための覚え書き)
}

プレビュー

このページの変更記録

  • 7/30 12:30 公開
  • 7/30 xx:xx 誤字訂正
  • 7/30 xx:xx 課題報告の仕方修正

第4回課題実施報告の締め切りは,8/5 とします。
(締め切りに遅れても受付はします)


課題報告メールの件名は
A-303xxxx-04 名前(漢字名がのぞましい)
のように,してください。名前以外は,必ず,半角文字を使用してください。
最初は,A or B で,クラス(A, B は,大文字で半角文字を守ること)
次の数字は,学生番号(y303xxxx) なら,303xxxx の7桁とすること
最後は,報告する授業の回数です。01 から 15 まであります。
間の - は,半角のマイナス記号です。



教科書『Python Pocket Reference』
⇒ 教科書 p.数字,と書いてあれば,そこをみて,印をつけておくことをおすすめ。
この講義では,自分のために役立つプログラムを作成できるようにする。料理でいうと,自炊ができるレベルを目指す。


初期化プログラム

Python の動かし方
講義では,Jupyter Notebook を利用する。以下を見ておくとよい。
これでわかる!!Jupyter Notebook超入門(16分)@Youtube



#初期化プログラム。動作確認を含めて,プログラム作成のとき1度実行しておく
from math import * # math モジュールを利用する
from matplotlib.pyplot import * #グラフ関係を利用する
%matplotlib inline
from numpy import * #ベクトル演算,行列演算を効率化
from scipy.stats import norm #正規分布の計算
pi # πの値が表示されたら,正常動作している
# 課題提出するときは,初期化プログラムをつける必要なし


データを用意する


#身長のデータ 2019年度授業参加大学2年男子から40人
H = array((

       183, 178, 173, 178, 168, 
       181, 180, 165, 180, 165,
       177, 179, 169, 165, 175, 
       170, 167, 170, 185, 170,
       163, 171, 163, 166, 169,
       169, 160, 160, 163, 167,
       170, 178, 174, 177, 164,
       167, 165, 170, 184, 174
   ))

type(H), H[0:4] # データの型名と最初部分を表示して,確認


主な統計値をみる


#最小値,最大値,平均,標準偏差
min(H), max(H), mean(H), std(H)


それぞれどこで書いてあるの?


#それぞれ,計算する命令として,
#min( ), max( ), mean( ), std( )関数を使用した。
#通常,Python 言語では,命令は,関数の形式で書かれる。
#この関数は,どこで定義されているか?
#それぞれの__module__という特殊な変数で見ることができる。
min.__module__, max.__module__, mean.__module__, std.__module__


 bulitins は,組み込みのもの(複数形のS付き)。最初から組み込まれているもの。車でいうとボティやタイヤに相当。mean( ) は,numpy モジュールと定義してある。車でいうとオプションにあたる。初期化のプログラムで,import 宣言をして,利用可能としている。車でいうとオプションにあたるクーラやラジカセ。import せずに使用できない。


ヒストグラムと正規分図曲線を表示しよう。



#ヒストグラムを2つ表示する
hist(H, bins=15, color='red') #区分数,色など指定できる
show() #グラフを表示する。ないと,プログラムの最後に表示する。
hist(H) #パラメータを省略すると,適当に処理される


データが正規分布と無関係でも,強制的に正規分布のデータを作ってみる。


#平均,標準偏差から,正規分布を強制的に作成する
#X 軸の値を生成。平均から±標準偏差*3
X = arange(mean(H)-3*std(H), mean(H)+3*std(H), 0.1)
#確率密度関数(X,平均、標準偏差)
Y = norm.pdf(X, mean(H), std(H))
plot(X, Y, color='red') #折れ線を使って表示


ヒストグラムと正規分布曲線を重ねて表示する


#ヒストグラムに正規分布曲線を重ねる
#平均,標準偏差から,正規分布を強制的に作成する
#X 軸の値を生成。平均から±標準偏差*3
X = arange(mean(H)-3*std(H), mean(H)+3*std(H), 0.1)
#確率密度関数(X,平均、標準偏差)
Y = norm.pdf(X, mean(H), std(H))
HD = hist(H, color='blue')
r = max(HD[0])/0.06 #ヒストグラムと曲線のトップをあわせる比率
plot(X, Y*r, color='red') #折れ線を使って表示



課題

適当な数字を4つ,タプル型変数に代入し,それを * 3 をしてみる
また,その4つの数字を numpy.array変数に代入し,* 3 をしてみる


課題報告は

  • 課題を実施した感想,あれば質問

それに加えて


命令(関数)は,それぞれモジュールに保管されていることを理解した。


と書き
試したプログラムも書いてください。
今回,変数名の H は,必ず変更すること。


(投稿された他の学生のものはコピーして修正しないこと。これをやると伝言ゲームのようにだんだんおかしなプログラムになる)



登場した用語

モジュール


質問と返答

講義への質問は,suehiro3721p@gmail.com まで


講義メモ(先生のための覚え書き)


ソースを確認する


第4回目 ヒストグラム 正規分布図を描くの編集履歴一覧へ戻る