データサイエンス/08
をテンプレートにして作成
LECTURE
担当科目一覧
コンピュータ概論/2024
データサイエンス/2024
3DCG演習/2024
情報デザイン研究/2024
卒業研究/2024
KEYWORDS
WEB DESIGN
SOCIAL DESIGN
SQUARES
LINKS
九州産業大学
芸術学部
芸術研究科
九産大美術館
九産大図書館
年間スケジュール
動画ニュース他
交通情報
気象・環境情報
危機に備えて
K'sLife
Office365Mail
Tools
SEARCH
開始行:
*第8回 Pythonによる統計グラフ
[[データサイエンス/2024]]|[[受講生一覧>https://design.ky...
~
~
***サンプル修正版|2024.11.11
&color(red){サンプルプログラムにミスがありましたので、以...
https://github.com/koichi-inoue/DataScience/blob/main/Sta...
修正点は「グラフ用のデータフレーム の作成 」の部分の以下...
誤:df2 = df.groupby( 'day' ).mean( )
正:df2 = df.groupby( 'day' ).mean( numeric_only=True )
以前は、上の書き方でも動いていました(数値項目のみが自動...
~
~
**統計グラフ
***様々なグラフ
-[[ヒストグラム>GoogleImage:ヒストグラム]]:縦軸に度数、...
-[[ボックスプロット(箱ひげ図)>GoogleImage:箱ひげ図]]:...
-[[散布図>GoogleImage:散布図]]:縦軸、横軸に変数を対応さ...
-[[折れ線グラフ>GoogleImage:折れ線グラフ]]:時系列の推移...
-[[棒グラフ>GoogleImage:棒グラフ]]:項目間の値を比較する...
-[[円グラフ>GoogleImage:円グラフ]]:円図形を扇形に分割し...
-[[ヒートマップ>GoogleImage:ヒートマップ]]:2次元データの...
~
***統計グラフ表示のためのライブラリ
Pythonを用いた統計グラフには、様々な関連ライブラリーのイ...
//-[[numpy>https://numpy.org/]]|数値計算
// import numpy as np
-[[pandas>Pandas]]|データフレームの活用
import pandas as pd
-[[matplotlib>https://matplotlib.org/]]|グラフ描画の基本...
import matplotlib.pyplot as plt
-[[seaborn>https://seaborn.pydata.org/]]|matplotlib をベ...
import seaborn as sns
~
~
**統計グラフの描画体験
はじめに matplotlib と pandas の連携による基本的なグラフ...
~
***データの準備
統計グラフの作成には、対象となるデータを''データフレーム'...
df = pd.read_csv( '/path/to/xxxxx.csv' )
~
***ヒストグラム
#image(Pandas/hist.png,right,30%)
ヒストグラム(柱状グラフ、度数分布図)は、横軸に階級、縦...
データフレームからヒストグラムを生成するコードは非常に簡...
df.hist( ) 全項目一挙表示
df[ 'XXX' ] .hist( ) 特定カラムの表示
&small(df はデータフレーム変数の例です。);
~
***ボックスプロット
#image(Pandas/box.png,right,30%)
ボックスプロット(箱ひげ図)は、データのばらつきを可視化...
一般に以下の五数が要約(five-number summary)されて表示さ...
-最小値(minimum)
-第1四分位点(lower quartile)
-中央値(第2四分位点、median)
-第3四分位点(upper quartile)
-最大値(maximum)
以下のコードは、対象カラム(XXX)をグループ(AAA)別に表...
df.boxplot( column='XXX' , by='AAA' )
~
***散布図
#image(Pandas/scatter.png,right,30%)
散布図(scatter plot)は、縦軸、横軸に2つの量的データ項...
以下のコードは、x軸とy軸にカラム項目を指定して表示します。
df.plot.scatter( x='XXX', y='YYY' )
~
***折れ線グラフ・棒グラフ・円グラフ
これらのグラフは項目間の推移や比較を見るために使います。...
# 性別ごとに国語・英語・数学の平均値を算出
df_mean = df.groupby( 'Gender' , as_index=False ).mean( )
df_mean
||Gender|Japanese|English|Mathematics|h
|0|F|62.350000|58.475000|39.800000|
|1|M|56.420455|41.142045|39.539773|
#image(Pandas/bar.png,right,30%)
生成された df_mean を使うと、簡単に積み重ね棒グラフができ...
df_mean.plot.bar( stacked=True )
&small(stacked=True は、積み重ねを有効にする・・という意...
~
~
**演習8|統計グラフ
CSVデータから統計量を視覚化するサンプルです。matplotlib ...
~
***ノートブックの新規作成
-__[[Google Colaboratory>https://colab.research.google.co...
-Untitled0.ipynb というファイル名を変更 > StatisticalGra...
~
***サンプルデータ
Tips のデータをサンプルとして利用します。
直接読み込むので、ダウンロードの必要はありません。
https://github.com/mwaskom/seaborn-data/blob/master/tips....
//https://raw.githubusercontent.com/mwaskom/seaborn-data/...
~
***サンプルコード
JupyterNotebook形式(.ipynb)でプログラムを提供します。
https://github.com/koichi-inoue/DataScience/blob/main/Sta...
~
***学科サイトにリンク掲載
ノートを、学科サイトの個人ページからリンクして下さい。以...
-1. 自分のノートを開いた状態で、右上の「共有」をクリック
-2. 共有設定を変更して、以下のように表示される状態にしま...
このリンクを知っているインターネット上の全員が閲覧できま...
-3. 「リンクをコピー」をクリックして、そのアドレスを、以...
-[[統計グラフ>https://colab.research.go・・=sharing]]
-4. 以下のようになればOKです。
https://design.kyusan-u.ac.jp/socialdesign/?JohnSmith/Dat...
~
~
**演習8|プログラムの解説
***ライブラリーの読み込み
冒頭で、グラフ描画用のライブラリー''matplotlib''とデータ...
# matplotlib パッケージ から pyplot モジュールを plt と...
import matplotlib.pyplot as plt
# pandasライブラリの読み込み
import pandas as pd
~
***ヒストグラム・ボックスプロット・散布図
-ヒストグラム(度数分布) hist
以下の1行で、データフレームに含まれる「量的データ」すべ...
df.hist()
以下の一行で、グラフを表示します。この1行は書かなくても...
plt.show()
-ボックスプロット(箱ひげ図) boxplot
以下の一行で曜日ごとのチップの額に関するボックスプロット...
df.boxplot( column = 'tip', by = 'day' , figsize = ( 9, ...
figsize はノート上に表示されるグラフの幅と高さを指定して...
-散布図 plot.scatter
以下の一行で「総支払い額」と「チップ」の散布図が表示され...
df.plot.scatter( x = 'total_bill' , y = 'tip' , figsize ...
alpha は点をプロットする際の「不透明度」を意味します。
~
***棒グラフ・折れ線グラフ・円グラフ
-事前のデータ処理
折れ線グラフ、棒グラフ、円グラフでは、全てのデータを可視...
df2 = df.groupby( 'day' ).mean()
df2
-indexの並べ替え
データフレームを処理すると、項目がアルファベット順に出力...
df3 = df2.reindex( index = [ 'Thur', 'Fri', 'Sat' , 'Sun...
df3
-折れ線グラフ plot
以下の一行で量的データ項目の折れ線グラフが表示されます。...
df3.plot( figsize = ( 9, 6 ) )
-棒グラフ plot.bar
以下の一行で量的データ項目の棒グラフが表示されます。
df3.plot.bar( figsize = ( 9 , 6 ) )
-積み重ね棒グラフ
以下の一行で総支払額とチップの積み重ね棒グラフが表示され...
df3[ ['total_bill' , 'tip'] ].plot.bar( stacked=True , f...
-円グラフ plot.pie
以下の一行で量的データ項目の曜日構成比が円グラフとして表...
df3.plot.pie( subplots = True , figsize = (12,6) )
~
~
#hr
CENTER:'''以下は、seaborn というライブラリを活用した事例...
'''参考情報なので、取り組みは任意です。'''
#hr
~
~
**Pythonによる統計グラフ+
seaborn というライブラリを使った応用的なグラフ描画を体験...
~
***seabornについて
seabornは Python の可視化ライブラリで、matplotlib が内部...
-公式サイト:https://seaborn.pydata.org/
-seabornの長所
--美麗なグラフを描くことができる
--matplotlibと比較すると少ないコードで描画できる
-seabornの利用には、Pythonのバージョンが3.6以上であること...
&small(Google Colab は問題ありません。);
~
***ヒストグラム
-量的変数のヒストグラム
sns.displot( )
sns.histplot( )
//&color(red){Web検索では dis ''t'' plot が表示されること...
//https://seaborn.pydata.org/generated/seaborn.distplot.h...
--displot( )
sns.displot( df['total_bill'] , bins=20 , color='#0033A...
--histplot( )
例えば以下のように書くと、曜日ごとのデータを色違いに重ね...
sns.histplot( data = df , x= 'total_bill' , bins=20 , hu...
~
-質的変数のヒストグラム
sns.countplot( )
~
***ボックスプロット
sns.boxplot( )
~
***散布図
質的変数の違いを色・形で区別、また量的変数をドットのサイ...
sns.scatterplot( )
~
***散布図行列
相関行列同様に、量的項目間の相関を一括表示
sns.pairplot( )
~
***ヒートマップ
2次元の表の値を色の差( 青:小 ←→ 赤:大 など)で表現
sns.heatmap( )
~
***棒グラフ・円グラフ等
seaborn ライブラリーによる棒グラフの表示は煩雑、また seab...
~
~
**演習8+|統計グラフ+
***ノートブックの新規作成
-__[[Google Colaboratory>https://colab.research.google.co...
-Untitled0.ipynb というファイル名を変更 > StatisticalGra...
~
***サンプルデータ
いずれも https アクセスでプログラム内で直接読み込むので、...
~
-サンプル1:tips.csv(前回同様)
レストランにおける総支払額、チップの額、テーブルサイズ等
https://github.com/mwaskom/seaborn-data/blob/master/tips....
-サンプル2:covid-19.csv(ヒートマップ作成サンプルとして...
covid-19 陽性者数(都道府県別・月別)
https://github.com/koichi-inoue/DataScience/blob/main/cov...
オリジナルは以下、厚生労働省が公開している[[オープンデー...
https://www.mhlw.go.jp/stf/covid-19/open-data.html
~
***サンプルコード
JupyterNotebook形式(.ipynb)でプログラムを提供します。
https://github.com/koichi-inoue/DataScience/blob/main/Sta...
~
***学科サイトにリンク掲載
ノートを、学科サイトの個人ページからリンクして下さい。以...
-1. 自分のノートを開いた状態で、右上の「共有」をクリック
-2. 共有設定を変更して、以下のように表示される状態にしま...
このリンクを知っているインターネット上の全員が閲覧できま...
-3. 「リンクをコピー」をクリックして、そのアドレスを、以...
-[[統計グラフ+>https://colab.research.go・・=sharing]]
-4. 以下のようになればOKです。
https://design.kyusan-u.ac.jp/socialdesign/?JohnSmith/Dat...
~
~
**演習8+|プログラムの解説
***ライブラリーの読み込み
冒頭で、グラフ描画用のライブラリ matplotlib、seaborn とデ...
# matplotlib パッケージ から pyplot モジュールを plt と...
import matplotlib.pyplot as plt
# seaborn ライブラリを sns として読み込み
import seaborn as sns
# seabornの機能を有効化
sns.set()
# pandasライブラリの読み込み
import pandas as pd
~
***ヒストグラム
-量的変数(総支払額)のヒストグラム
sns.displot( )
--df['total_bill']:対象となるカラム項目
--bins=12:階級の分割数
--color='#0033AA':グラフの色
--height=6 , aspect=2:グラフのサイズ指定(高さとアスペク...
&small(アスペクト比は 幅/高さ);
--kde=True :確率密度関数の曲線を重ねて表示
-質的変数(曜日別)のカウントをヒストグラム化
sns.countplot( )
--data = df:データとして データフレーム df を使用
--x = 'smoker':喫煙者か非喫煙者で分布を比較
--order = ['Yes', 'No'] :喫煙者、非喫煙者の順に表示
--hue = 'day':曜日を色で区別
~
***ボックスプロット
sns.boxplot( )
--data = df:データとして データフレーム df を使用
--x = 'day':横軸は「曜日」
--y = 'total_bill':縦軸は「総支払額」
--order = ['Thur','Fri','Sat','Sun']:木金土日の順に表示
~
***散布図
-一般的な散布図
sns.scatterplot( )
--data = df:データとして データフレーム df を使用
--x = 'total_bill':横軸に「総支払額」
--y = 'tip':縦軸に「チップの額」
-質的変数の違いを色・形で区別
--hue = 'day':曜日の違いを色で区別
--style = 'time':ディナーを◯、ランチを × でプロット
--s = 100:ドットのサイズ指定
-量的変数をドットのサイズで表現(バブルチャート)
--size = 'size':テーブルサイズ(人数)をドットのサイズに...
--sizes = (100,1000) :ドットのサイズは 100 〜 1000 に割...
--alpha = 0.5:不透明度 0.5
~
***散布図行列
相関行列同様に、量的項目間の相関を一括表示
sns.pairplot( )
--data = df:データとして データフレーム df を使用
--hue = 'day':曜日の違いを色で区別
--height = 4 , aspect = 1 :グラフのサイズ指定(高さとア...
&small(アスペクト比は 幅/高さ);
~
***ヒートマップ
このサンプルでは、covid-19 の陽性者数を「横軸:年月、縦軸...
sns.heatmap( )
--df2:データフレーム df2 を使用
--linewidths=.5:ヒートマップの各データ間に線を描く
--cmap = "coolwarm":ヒートマップの色の組み合わせ(青 - ...
--fmt="d":表示フォーマット 10進数
--annot = True:セルに値を出力
--robust = True:極端に大きな値や小さい値の影響を受けない...
&small(ロバスト推定とは「外れ値に影響されにくい推定」を意...
~
***ファイルの保存について
GoogleColab のファイル操作のためのライブラリを読み込むこ...
-ライブラリの読み込み
from google.colab import files
-matplotlib の機能を使って画像に名前を付けて保存(内部的...
plt.savefig('heatmap.png')
-GoogleColab の機能を使ってファイルをダウンロード
files.download('heatmap.png')
~
~
**APPENDIX
***数理グラフ
数式等を用いたグラフ表示のサンプルです。時間に余裕のある...
https://github.com/koichi-inoue/DataScience/blob/main/Plo...
~
~
終了行:
*第8回 Pythonによる統計グラフ
[[データサイエンス/2024]]|[[受講生一覧>https://design.ky...
~
~
***サンプル修正版|2024.11.11
&color(red){サンプルプログラムにミスがありましたので、以...
https://github.com/koichi-inoue/DataScience/blob/main/Sta...
修正点は「グラフ用のデータフレーム の作成 」の部分の以下...
誤:df2 = df.groupby( 'day' ).mean( )
正:df2 = df.groupby( 'day' ).mean( numeric_only=True )
以前は、上の書き方でも動いていました(数値項目のみが自動...
~
~
**統計グラフ
***様々なグラフ
-[[ヒストグラム>GoogleImage:ヒストグラム]]:縦軸に度数、...
-[[ボックスプロット(箱ひげ図)>GoogleImage:箱ひげ図]]:...
-[[散布図>GoogleImage:散布図]]:縦軸、横軸に変数を対応さ...
-[[折れ線グラフ>GoogleImage:折れ線グラフ]]:時系列の推移...
-[[棒グラフ>GoogleImage:棒グラフ]]:項目間の値を比較する...
-[[円グラフ>GoogleImage:円グラフ]]:円図形を扇形に分割し...
-[[ヒートマップ>GoogleImage:ヒートマップ]]:2次元データの...
~
***統計グラフ表示のためのライブラリ
Pythonを用いた統計グラフには、様々な関連ライブラリーのイ...
//-[[numpy>https://numpy.org/]]|数値計算
// import numpy as np
-[[pandas>Pandas]]|データフレームの活用
import pandas as pd
-[[matplotlib>https://matplotlib.org/]]|グラフ描画の基本...
import matplotlib.pyplot as plt
-[[seaborn>https://seaborn.pydata.org/]]|matplotlib をベ...
import seaborn as sns
~
~
**統計グラフの描画体験
はじめに matplotlib と pandas の連携による基本的なグラフ...
~
***データの準備
統計グラフの作成には、対象となるデータを''データフレーム'...
df = pd.read_csv( '/path/to/xxxxx.csv' )
~
***ヒストグラム
#image(Pandas/hist.png,right,30%)
ヒストグラム(柱状グラフ、度数分布図)は、横軸に階級、縦...
データフレームからヒストグラムを生成するコードは非常に簡...
df.hist( ) 全項目一挙表示
df[ 'XXX' ] .hist( ) 特定カラムの表示
&small(df はデータフレーム変数の例です。);
~
***ボックスプロット
#image(Pandas/box.png,right,30%)
ボックスプロット(箱ひげ図)は、データのばらつきを可視化...
一般に以下の五数が要約(five-number summary)されて表示さ...
-最小値(minimum)
-第1四分位点(lower quartile)
-中央値(第2四分位点、median)
-第3四分位点(upper quartile)
-最大値(maximum)
以下のコードは、対象カラム(XXX)をグループ(AAA)別に表...
df.boxplot( column='XXX' , by='AAA' )
~
***散布図
#image(Pandas/scatter.png,right,30%)
散布図(scatter plot)は、縦軸、横軸に2つの量的データ項...
以下のコードは、x軸とy軸にカラム項目を指定して表示します。
df.plot.scatter( x='XXX', y='YYY' )
~
***折れ線グラフ・棒グラフ・円グラフ
これらのグラフは項目間の推移や比較を見るために使います。...
# 性別ごとに国語・英語・数学の平均値を算出
df_mean = df.groupby( 'Gender' , as_index=False ).mean( )
df_mean
||Gender|Japanese|English|Mathematics|h
|0|F|62.350000|58.475000|39.800000|
|1|M|56.420455|41.142045|39.539773|
#image(Pandas/bar.png,right,30%)
生成された df_mean を使うと、簡単に積み重ね棒グラフができ...
df_mean.plot.bar( stacked=True )
&small(stacked=True は、積み重ねを有効にする・・という意...
~
~
**演習8|統計グラフ
CSVデータから統計量を視覚化するサンプルです。matplotlib ...
~
***ノートブックの新規作成
-__[[Google Colaboratory>https://colab.research.google.co...
-Untitled0.ipynb というファイル名を変更 > StatisticalGra...
~
***サンプルデータ
Tips のデータをサンプルとして利用します。
直接読み込むので、ダウンロードの必要はありません。
https://github.com/mwaskom/seaborn-data/blob/master/tips....
//https://raw.githubusercontent.com/mwaskom/seaborn-data/...
~
***サンプルコード
JupyterNotebook形式(.ipynb)でプログラムを提供します。
https://github.com/koichi-inoue/DataScience/blob/main/Sta...
~
***学科サイトにリンク掲載
ノートを、学科サイトの個人ページからリンクして下さい。以...
-1. 自分のノートを開いた状態で、右上の「共有」をクリック
-2. 共有設定を変更して、以下のように表示される状態にしま...
このリンクを知っているインターネット上の全員が閲覧できま...
-3. 「リンクをコピー」をクリックして、そのアドレスを、以...
-[[統計グラフ>https://colab.research.go・・=sharing]]
-4. 以下のようになればOKです。
https://design.kyusan-u.ac.jp/socialdesign/?JohnSmith/Dat...
~
~
**演習8|プログラムの解説
***ライブラリーの読み込み
冒頭で、グラフ描画用のライブラリー''matplotlib''とデータ...
# matplotlib パッケージ から pyplot モジュールを plt と...
import matplotlib.pyplot as plt
# pandasライブラリの読み込み
import pandas as pd
~
***ヒストグラム・ボックスプロット・散布図
-ヒストグラム(度数分布) hist
以下の1行で、データフレームに含まれる「量的データ」すべ...
df.hist()
以下の一行で、グラフを表示します。この1行は書かなくても...
plt.show()
-ボックスプロット(箱ひげ図) boxplot
以下の一行で曜日ごとのチップの額に関するボックスプロット...
df.boxplot( column = 'tip', by = 'day' , figsize = ( 9, ...
figsize はノート上に表示されるグラフの幅と高さを指定して...
-散布図 plot.scatter
以下の一行で「総支払い額」と「チップ」の散布図が表示され...
df.plot.scatter( x = 'total_bill' , y = 'tip' , figsize ...
alpha は点をプロットする際の「不透明度」を意味します。
~
***棒グラフ・折れ線グラフ・円グラフ
-事前のデータ処理
折れ線グラフ、棒グラフ、円グラフでは、全てのデータを可視...
df2 = df.groupby( 'day' ).mean()
df2
-indexの並べ替え
データフレームを処理すると、項目がアルファベット順に出力...
df3 = df2.reindex( index = [ 'Thur', 'Fri', 'Sat' , 'Sun...
df3
-折れ線グラフ plot
以下の一行で量的データ項目の折れ線グラフが表示されます。...
df3.plot( figsize = ( 9, 6 ) )
-棒グラフ plot.bar
以下の一行で量的データ項目の棒グラフが表示されます。
df3.plot.bar( figsize = ( 9 , 6 ) )
-積み重ね棒グラフ
以下の一行で総支払額とチップの積み重ね棒グラフが表示され...
df3[ ['total_bill' , 'tip'] ].plot.bar( stacked=True , f...
-円グラフ plot.pie
以下の一行で量的データ項目の曜日構成比が円グラフとして表...
df3.plot.pie( subplots = True , figsize = (12,6) )
~
~
#hr
CENTER:'''以下は、seaborn というライブラリを活用した事例...
'''参考情報なので、取り組みは任意です。'''
#hr
~
~
**Pythonによる統計グラフ+
seaborn というライブラリを使った応用的なグラフ描画を体験...
~
***seabornについて
seabornは Python の可視化ライブラリで、matplotlib が内部...
-公式サイト:https://seaborn.pydata.org/
-seabornの長所
--美麗なグラフを描くことができる
--matplotlibと比較すると少ないコードで描画できる
-seabornの利用には、Pythonのバージョンが3.6以上であること...
&small(Google Colab は問題ありません。);
~
***ヒストグラム
-量的変数のヒストグラム
sns.displot( )
sns.histplot( )
//&color(red){Web検索では dis ''t'' plot が表示されること...
//https://seaborn.pydata.org/generated/seaborn.distplot.h...
--displot( )
sns.displot( df['total_bill'] , bins=20 , color='#0033A...
--histplot( )
例えば以下のように書くと、曜日ごとのデータを色違いに重ね...
sns.histplot( data = df , x= 'total_bill' , bins=20 , hu...
~
-質的変数のヒストグラム
sns.countplot( )
~
***ボックスプロット
sns.boxplot( )
~
***散布図
質的変数の違いを色・形で区別、また量的変数をドットのサイ...
sns.scatterplot( )
~
***散布図行列
相関行列同様に、量的項目間の相関を一括表示
sns.pairplot( )
~
***ヒートマップ
2次元の表の値を色の差( 青:小 ←→ 赤:大 など)で表現
sns.heatmap( )
~
***棒グラフ・円グラフ等
seaborn ライブラリーによる棒グラフの表示は煩雑、また seab...
~
~
**演習8+|統計グラフ+
***ノートブックの新規作成
-__[[Google Colaboratory>https://colab.research.google.co...
-Untitled0.ipynb というファイル名を変更 > StatisticalGra...
~
***サンプルデータ
いずれも https アクセスでプログラム内で直接読み込むので、...
~
-サンプル1:tips.csv(前回同様)
レストランにおける総支払額、チップの額、テーブルサイズ等
https://github.com/mwaskom/seaborn-data/blob/master/tips....
-サンプル2:covid-19.csv(ヒートマップ作成サンプルとして...
covid-19 陽性者数(都道府県別・月別)
https://github.com/koichi-inoue/DataScience/blob/main/cov...
オリジナルは以下、厚生労働省が公開している[[オープンデー...
https://www.mhlw.go.jp/stf/covid-19/open-data.html
~
***サンプルコード
JupyterNotebook形式(.ipynb)でプログラムを提供します。
https://github.com/koichi-inoue/DataScience/blob/main/Sta...
~
***学科サイトにリンク掲載
ノートを、学科サイトの個人ページからリンクして下さい。以...
-1. 自分のノートを開いた状態で、右上の「共有」をクリック
-2. 共有設定を変更して、以下のように表示される状態にしま...
このリンクを知っているインターネット上の全員が閲覧できま...
-3. 「リンクをコピー」をクリックして、そのアドレスを、以...
-[[統計グラフ+>https://colab.research.go・・=sharing]]
-4. 以下のようになればOKです。
https://design.kyusan-u.ac.jp/socialdesign/?JohnSmith/Dat...
~
~
**演習8+|プログラムの解説
***ライブラリーの読み込み
冒頭で、グラフ描画用のライブラリ matplotlib、seaborn とデ...
# matplotlib パッケージ から pyplot モジュールを plt と...
import matplotlib.pyplot as plt
# seaborn ライブラリを sns として読み込み
import seaborn as sns
# seabornの機能を有効化
sns.set()
# pandasライブラリの読み込み
import pandas as pd
~
***ヒストグラム
-量的変数(総支払額)のヒストグラム
sns.displot( )
--df['total_bill']:対象となるカラム項目
--bins=12:階級の分割数
--color='#0033AA':グラフの色
--height=6 , aspect=2:グラフのサイズ指定(高さとアスペク...
&small(アスペクト比は 幅/高さ);
--kde=True :確率密度関数の曲線を重ねて表示
-質的変数(曜日別)のカウントをヒストグラム化
sns.countplot( )
--data = df:データとして データフレーム df を使用
--x = 'smoker':喫煙者か非喫煙者で分布を比較
--order = ['Yes', 'No'] :喫煙者、非喫煙者の順に表示
--hue = 'day':曜日を色で区別
~
***ボックスプロット
sns.boxplot( )
--data = df:データとして データフレーム df を使用
--x = 'day':横軸は「曜日」
--y = 'total_bill':縦軸は「総支払額」
--order = ['Thur','Fri','Sat','Sun']:木金土日の順に表示
~
***散布図
-一般的な散布図
sns.scatterplot( )
--data = df:データとして データフレーム df を使用
--x = 'total_bill':横軸に「総支払額」
--y = 'tip':縦軸に「チップの額」
-質的変数の違いを色・形で区別
--hue = 'day':曜日の違いを色で区別
--style = 'time':ディナーを◯、ランチを × でプロット
--s = 100:ドットのサイズ指定
-量的変数をドットのサイズで表現(バブルチャート)
--size = 'size':テーブルサイズ(人数)をドットのサイズに...
--sizes = (100,1000) :ドットのサイズは 100 〜 1000 に割...
--alpha = 0.5:不透明度 0.5
~
***散布図行列
相関行列同様に、量的項目間の相関を一括表示
sns.pairplot( )
--data = df:データとして データフレーム df を使用
--hue = 'day':曜日の違いを色で区別
--height = 4 , aspect = 1 :グラフのサイズ指定(高さとア...
&small(アスペクト比は 幅/高さ);
~
***ヒートマップ
このサンプルでは、covid-19 の陽性者数を「横軸:年月、縦軸...
sns.heatmap( )
--df2:データフレーム df2 を使用
--linewidths=.5:ヒートマップの各データ間に線を描く
--cmap = "coolwarm":ヒートマップの色の組み合わせ(青 - ...
--fmt="d":表示フォーマット 10進数
--annot = True:セルに値を出力
--robust = True:極端に大きな値や小さい値の影響を受けない...
&small(ロバスト推定とは「外れ値に影響されにくい推定」を意...
~
***ファイルの保存について
GoogleColab のファイル操作のためのライブラリを読み込むこ...
-ライブラリの読み込み
from google.colab import files
-matplotlib の機能を使って画像に名前を付けて保存(内部的...
plt.savefig('heatmap.png')
-GoogleColab の機能を使ってファイルをダウンロード
files.download('heatmap.png')
~
~
**APPENDIX
***数理グラフ
数式等を用いたグラフ表示のサンプルです。時間に余裕のある...
https://github.com/koichi-inoue/DataScience/blob/main/Plo...
~
~
ページ名: