My Notes

統計学とかR(R言語)とかPython3の覚え書きとか走り書きとか。 座右の銘にしたい: All work and no play makes Jack a dull boy.

統計学

R(R言語)で、重回帰分析における予備的解析(1変数ごとの予備的解析、要約統計量、度数、(不偏)標準偏差、データのグラフ化、ヒストグラム、箱ヒゲ図、ドットプロット、幹葉図)

Rコード # # 使用するデータと解説は『SPSSによる回帰分析』p28~33 # # # 重回帰分析における予備的解析 # 1変数ごとの予備的解析 # # # 使用するデータについて # # ある製品の重量y(単位 : mg)と、 # その製品を製造するときの条件x1(熱処理時間 : 秒)、x2…

Python3(pandas)で、統計学の基礎を繰り返し。代表値。平均値。資料から直接算出する平均値と度数分布(表)から算出する平均値。

Python3コード #!/usr/bin/env python3 """(docstring) """ # 統計学の基礎を繰り返し。 # # 代表値。 # 平均値。 # 資料から直接算出する平均値と度数分布(表)から算出する平均値。 # # 基礎となる概念や数式の理解のためであるので、 # Python関係のmean()…

R(R言語)で、単回帰分析(回帰直線、回帰式、回帰係数、最小二乗法、重相関係数R、回帰式の有意性、回帰式の有効性、寄与率(R2乗値)、残差標準偏差(残差の標準誤差)、母回帰係数の信頼区間(区間推定))

Rコード # # 使用するデータと解説は『SPSSによる回帰分析』p10~ # # # データについて # マンション価格yと占有面積xを20物件について調べた結果 # 物件番号_vec <- c(1:20) # (m2) 占有面積x_vec <-c(65.87, 48.23, 56.76, 64.62, 54.03, 68.44, 47.77, 51…

統計学 回帰分析 変数の種類の要件

単回帰、重回帰分析 変数の種類について 目的変数(応答変数 response variable, 従属変数 dependent variable)は、量的変数(連続変数)でなくてはならない。 説明変数(explanatory variable, 予測変数 predictor variable, 独立変数 independent variable)は…

統計学 数学 数値計算で使用してるiOSアプリ。

数値計算のほんとの手計算が面倒くさい 例えば、4x-2y=1 という1次方程式がある場合、紙とペンで計算すればいいわけですが、 当ブログ筆者は、生徒・学生・受験生等ではないし、面倒くさいわけです。 紙とペンだと計算間違いもあるしで。 一次方程式とかだと…

Python3(pandas, matplotlib)で、ヒストグラムを作成。matplotlib.pyplot as plt, plt.hist()

Python3コード #!/usr/bin/env python3 """(docstring) """ # 使用したデータは『統計処理ポケットリファレンス』 import matplotlib.pyplot as plt import numpy as np import pandas as pd def main(): """(docstring) """ # matplotlib # macOSやOS Xで文…

Python3(pandas, Scipy, StatsModels)で、要約統計量、相関係数、p値、単回帰分析。statsmodels.formula.api.ols(), statsmodels.formula.api as smf, smf.ols()

Python3コード #!/usr/bin/env python3 """(docstring) """ # 使用したデータは『マンガでわかる統計学 [回帰分析編]』第2章 import matplotlib.pyplot as plt import numpy as np import pandas as pd import scipy as sp from scipy import stats import s…

Python3(pandas, StatsModels)で、単回帰分析。regression.linear_model.OLS()

Python3コード #!/usr/bin/env python3 """(docstring) """ # 使用したデータは『マンガでわかる統計学 [回帰分析編]』第2章 import matplotlib.pyplot as plt import numpy as np import pandas as pd import statsmodels.api as sm # statsmodels.regressi…

Python3(pandas, Scipy)で、差に対するカイ二乗検定。stats.chisquare()

Python3コード #!/usr/bin/env python3 """(docstring) """ # 使用したデータは『すぐできる生物統計』 # # 差に対するカイ二乗検定 # # メンデルの法則に従う遺伝実験で、しわのないえんどう豆としわのあるえんどう豆の # 雑種第1世代(F1)が交雑された。 # …

Python3(matplotlib, pandas, Scipy)で、分散分析。stats.pearsonr()

Python3コード #!/usr/bin/env python3 """(docstring) """ # 使用したデータは『すぐできる生物統計』 # # 相関分析(ピアソンの相関係数) # # 年輩患者の心臓血管の健康状態を調べるため、30人の患者の心拍数と血圧が測定された。 # これらの変数(変量)の間…

Python3(pandas, Scipy)で、一元配置分散分析(ANOVA)。stats.f_oneway()

Python3コード #!/usr/bin/env python3 """(docstring) """ # 使用したデータは『すぐできる生物統計』 # # 一元配置分散分析 # # 2つのグループの魚の体重が互いに有意に違っているかどうか # 帰無仮説 # 2つのグループの魚が同じ平均体重をもっている。 # …

Python3(pandas, Scipy)で、平均、標準偏差、標準誤差、一標本t検定(両側)。stats.ttest_1samp()

Python3コード #!/usr/bin/env python3 """(docstring) """ # 使用したデータは『すぐできる生物統計』 # # 統計学のテストで25人の学生の点数(単位はパーセント)がある。 # これらの点数について、平均値、標準偏差、標準誤差を算定。 # 学生の平均成績は58…

Python3(pandas, Scipy)で、対応のない(対になっていない)2標本t検定(両側)。ウェルチのt検定ではない場合とウェルチのt検定の場合。scipy.stats.ttest_ind()

Python3コード #!/usr/bin/env python3 """(docstring) """ # 使用したデータは『すぐできる生物統計』 # # 対応のない(対になっていない)2標本t検定(両側) # 16匹のオス象と16匹のメス象の体重(単位はトン)は、違った平均体重をもつかどうか。 # # 帰無仮説…

Python3(NumPy, Scipy, pandas)で、対応のある(対の)2標本t検定(両側)。scipy.stats.ttest_rel()

Python3コード #!/usr/bin/env python3 """(docstring) """ # 使用したデータは『すぐできる生物統計』 # # 対応のある(対の)2標本t検定(両側) # 9つの池のpHについて、夜明けと夕暮れに測定された2系列の測定結果 # # 帰無仮説 # pH濃度の差の平均値が0であ…

Python3(pandas, Scipy)で、一標本t検定(両側)。stats.ttest_1samp()

Python3コード #!/usr/bin/env python3 """(docstring) """ # 使用したデータは『すぐできる生物統計』 # # 帰無仮説 # オス象の平均体重は4.50トンである。 # import matplotlib.pyplot as plt import numpy as np import pandas as pd import scipy as sp …

Python3 Scipy(stats.linregress())とscikit-learn(sklearn linear_model.LinearRegression())で単回帰分析。

Python3コード #!/usr/bin/env python3 """使用したデータは『マンガでわかる統計学 [回帰分析編]』第2章 """ # # 結論から先に書いておくと、Scipyのstats.linregressだけでは、 # 主要な値は出せても、プロットするのが辛い。 # プロットするのに適してい…

Python3(matplotlib, NumPy, pandas, Scipy)で、(ピアソンの)相関係数(とp値)と散布図

Python3コード #!/usr/bin/env python3 """使用するデータは『Rによるやさしい統計学』の第3章から。 """ import matplotlib.pyplot as plt import numpy as np import pandas as pd import scipy as sp from scipy import stats def main(): """(docstring)…

Python3(scikit-learn)で単回帰分析

Python3コード #!/usr/bin/env python3 """(docstring) """ # (PEP8に従うなら、importはアルファベット順に)。 import numpy as np import matplotlib.pyplot as plt import pandas as pd from sklearn import linear_model def main(): """(docstring) """…

Python3(Numpy, pandas, Scipy)で、合計、平均、中央値、最頻値、(標本)分散、(標本)標準偏差、標準化(基準化)、偏差値を算出。

Python3コード #!/usr/bin/env python3 """(docstring) 使用したデータは『Rによるやさしい統計学』の第2章。 """ # あまりスマートなimportのやり方ではないと思うが、 # ちょっと明示的に使い分けたいので。 # (あと、PEP8に従いたければ、アルファベット…

Python3 標準ライブラリ巡り statistics

Python3コード #!/usr/bin/env python3 """(docstring) """ import statistics def my_statistics(): """(docstring) doctest >>> my_data = [1, 2, 2, 3] >>> my_mean = statistics.mean(my_data) >>> print('{0} {1}'.format('算術平均', my_mean)) 算術平…

R(R言語)のshinyで楽しいアプリ作成。ごく初歩から。

始め方 RStudioから install.packages("shiny") RStudioから新規プロジェクトを作成。 New Project -> New Directory -> Shiny Web Application を順に選択。 ディレクト名を付けて、Create Projectをクリック。 ui.Rとserver.Rの2つのファイルが自動的に作…

Rcppで標本分散を求める自作関数を作成する

Rcppコード #include <Rcpp.h> using namespace Rcpp; // [[Rcpp::export]] double rcpp_varp(NumericVector x) { // あまりC++な書き方ではないと思うが、変数に代入していくと値がおかしくなるので...。 // (勉強不足)。 return sum(pow(x - mean(x), 2)) / x.leng</rcpp.h>…

R(R言語)で、主成分分析(寄与率、寄与率の求め方)

Rコード # # R(R言語)で、主成分分析(寄与率、寄与率の求め方) # # # 使用するデータと解説は、『多変量解析がわかる』 第3章 p.81~82 # # 使用するデータ 20人の中学生の5教科のテスト結果 出席番号_vec <- c(1:20) 数学x_vec <- c(71, 34, 58, 41, 69, 64,…

R(R言語)で、主成分分析(主成分の求め方、主成分得点)

Rコード # # R(R言語)で、主成分分析(主成分の求め方、主成分得点) # # # 使用するデータと解説は、『多変量解析がわかる』 第3章 p.77~80 # # 使用するデータ 20人の中学生の5教科のテスト結果 # # 出席番号_vec <- c(1:20) 使用するのはやめた。 数学x_vec …

R(R言語)で、外れ値を考える(相関係数(ピアソン)、散布図、外れ値の除去・削除、相関係数の再確認、順位相関係数(ケンドール、スピアマン)

Rコード # # R(R言語)で、外れ値を考える # # # 使用するデータと解説は、『実践形式で学ぶ SPSSとAmosによる心理・調査データ解析』 # Exercise 1 p.2~9 # # # 書籍通りに従うと、 # 相関係数(ピアソン)、散布図、外れ値の除去・削除、相関係数の再確認、 #…

R(R言語)で、相関係数を求め単回帰分析、それを検討するために散布図、偏相関係数、重回帰分析(疑似相関を考える)

Rコード # # R(R言語)で、相関係数を求め単回帰分析、それを検討するために散布図、偏相関係数、重回帰分析(疑似相関を考える)。 # # # 使用するデータと解説は、『実践形式で学ぶ SPSSとAmosによる心理・調査データ解析』 # Exercise 2 p.10~17 # # # 書籍…

ノンパラメトリック検定 Wilcoxsonの符号つき順位検定(対応あり)をR(R言語)で。wilcox.test()

Rコード # # ノンパラメトリック検定 Wilcoxsonの符号つき順位検定(対応あり) # # # 参考にするデータや帰無仮説の立て方は、 #『パソコンで簡単! すぐできる生物統計 統計学の考え方から統計ソフトSPSSの使い方まで』 # 第8章 p.145~149 # # # 帰無仮説 # …

分散分析 一元配置分散分析(対応なし)をR(R言語)で。 oneway.test(), aov(), anova()

Rコード # # 分散分析 一元配置分散分析(対応なし) # # # 参考にするデータや帰無仮説の立て方は、 #『パソコンで簡単! すぐできる生物統計 統計学の考え方から統計ソフトSPSSの使い方まで』 # 第4章 p.69~70 # # # 帰無仮説 # "グループが同じ平均を持って…

アイスクリーム統計学 第5章 偏相関をR(R言語)で 試しに偏相関係数を計算する関数を作成

Rコード # アイスクリーム統計学 ch05 # # 偏相関 # # 最低気温のデータも含めたすべてのデータ データ番号_vec <- c(1:20) 最高気温_vec <- c(33, 33, 34, 34, 35, 35, 34, 32, 28, 35, 33, 28, 32, 25, 28, 30, 29, 32, 34, 35) 最低気温_vec <- c(22, 26,…

アイスクリーム統計学 第4章 単回帰をR(R言語)で (書籍なら、タイトルは『統計学がわかる 【回帰分析・因子分析編】 (ファーストブック)』

Rコード # アイスクリーム統計学 ch04 # # 単回帰分析 # # 去年の夏のデータ 土日を除いた平日 データ番号 <- c(1:20) 最高気温 <- c(33, 33, 34, 34, 35, 35, 34, 32, 28, 35, 33, 28, 32, 25, 28, 30, 29, 32, 34, 35) 客数 <- c(382, 324, 338, 317, 341,…

アイスクリーム統計学 第3章 無相関検定をR(R言語)で (書籍なら、タイトルは『統計学がわかる 【回帰分析・因子分析編】 (ファーストブック)』

Rコード # アイスクリーム統計学 ch03 # # 無相関検定 # # 標本のデータ 標本_vac <- c(1:20) 年齢_vec <- c(18, 20, 22, 19, 21, 23, 17, 13, 22, 24, 21, 15, 19, 17, 20, 16, 21, 26, 18, 19) 一ヶ月あたりの来店数_vec <- c(8, 8, 7, 6, 6, 5, 7, 3, 6, …

アイスクリーム統計学 第2章 相関係数をR(R言語)で (書籍なら、タイトルは『統計学がわかる 【回帰分析・因子分析編】 (ファーストブック)』

Rコード # アイスクリーム統計学 ch02 # # 手計算は省略 # # この店のデータ 日付_vec1 <- c(1:10) 最高気温_vec1 <- c(29, 29, 30, 32, 33, 32, 31, 26, 28, 31) 客数_vec1 <- c(326, 364, 283, 369, 417, 436, 438, 296, 263, 389) この店のデータ <- data…

アイスクリーム統計学 第1章 散布図と相関をR(R言語)で (書籍なら、タイトルは『統計学がわかる 【回帰分析・因子分析編】 (ファーストブック)』

Rコード # アイスクリーム統計学 ch01 # 別のチェーン店の8月の客数データ 日付_vec <- c(1:14) # c()の中に1:14と書いた方が安定する(と思う) 最高気温_vec <- c(29, 30, 29, 32, 33, 32, 34, 27, 28, 32, 34, 32, 30, 28) 客数_vec <- c(312, 348, 284, 36…

スチューデントのt検定の原始的な理解 「平均についての起こりうる誤差」

Rコード # # スチューデントのt検定の原始的な理解 # 「平均についての起こりうる誤差」 # # # ゴセットは、標本サイズの小さいデータセットから # 平均と標準偏差を調べ、前者を後者で割り、 # 結果をグラフ用紙にプロットして確認していたようだ # # R(R言…

対応のあるt検定 対応のある二標本t検定 をR(R言語)で

Rコード # # 対応のあるt検定 対応のある二標本t検定 # # # 使用するデータや数式や解説は、統計クイックリファレンス』 p.168~170 # # # 帰無仮説 # 2組の標本の平均の差は、0である。 # # 対立仮説 # 2組の標本の平均の差は、0でない。 # # "食事制限とエ…

『マンガでわかる統計学 回帰分析編』第4章 ロジスティック回帰分析 をR(R言語)で

Rコード # # 『マンガでわかる統計学 回帰分析編』 第4章 ロジスティック回帰分析 # # 水曜or土曜or日曜 1が水曜or土曜or日曜、 0はそれ以外 # ノルンスペシャルの販売状況 1は売れたということ、0は売れなかったということ df <- data.frame(水曜or土曜or日…

R(R言語)で数式をtext()を使用してplot 算術平均(arithmetic mean)の数式

Rコード # 文字化けするなら。 par(family = "Osaka") plot(0, 0, type = "n", xlim = c(0, 3), ylim = c(0, 3), xlab = "", ylab = "") text(1.5, 2.5, expression(bar(x) == frac(x[1] + x[2] + ... + x[n], n)), cex = 3.5) text(1.5, 1.50, "R(R言語)で…

独立標本t検定(二標本t検定)、t統計量、合併標本分散値をR(R言語)で t.test()や手計算

Rコード # # 参考にするデータ、数式、解説は、『統計クイックリファレンス』p.164~167 # # # 前提条件 # 2つの独立した母集団 # 全国のサッカー選手、全国のバレエダンサー # 10人ずつ無作為に選出 # # 2つの母分散は等しいと仮定する # # # 帰無仮説 # サ…

一標本t検定 R(R言語)のt.test()を使用して

Rコード # # 一標本t検定 t.test() # # # 参考にするデータや帰無仮説の立て方や計算式は、『パソコンで簡単! すぐできる生物統計 統計学の考え方から統計ソフトSPSSの使い方まで』第3章 p.50~52 # # 用語について # この書籍では、標本の平均値を"平均値"…

『マンガでわかる統計学 回帰分析編』第3章 重回帰分析 をR(R言語)で

Rコード # # 一ヶ月の売上額が目的変数 # 他は説明変数 # カザミベーカリー <- data.frame(店舗名 = c("夢の丘店", "寺井駅ビル店", "曽根店", "橋本通り店", "桔梗町店", "郵便局前店", "水道町駅前店", "六条駅ビル店", "若葉沿い店", "三里店"), お店の面…

相対度数、累積相対度数をR(R言語)で 手計算とcumsum()

Rコード # # 相対度数、累積相対度数、cumsum() # 使用するデータと計算式は、『ナースのための統計学 第2版」p.19~ # 血圧測定時間_秒 <- data.frame(時間 = c(94, 99, 49, 80, 175, 102, 127, 38, 56, 18, 83, 82, 105, 63, 111, 62, 80, 78, 116, 88, 26,…

『マンガでわかる統計学 回帰分析編』第2章 回帰分析 をR(R言語)で

Rコード # 『マンガでわかる統計学 回帰分析編』第2章 回帰分析 df <- data.frame(最高気温 = c(29, 28, 34, 31, 25, 29, 32, 31, 24, 33, 25, 31, 26, 30), アイスティーの注文数 = c(77, 62, 93, 84, 59, 64, 80, 75, 58, 91, 51, 73, 65, 84)) df 最高気…

『多変量解析がわかる(ファーストブック)』 第2章 回帰分析 単回帰分析をR(R言語)で

Rコード # 目的変量 婚姻率 y # 説明変量 老年人口の割合 x # 回帰方程式 y = a + bx # aを切片、bを単回帰係数(回帰係数) # 47都道府県ごとの婚姻率(人口千人当たりの結婚数)と老年人口の割合(65歳以上の割合) df <- data.frame(都道府県 = c("北海道", "青…

いろんなデータの分布をR(R言語)で可視化 ヒストグラムと密度推定曲線と散布図 日本の主な河川

Rコード # 分布 ヒストグラムと密度推定曲線と散布図 # 使用するデータは、『データブック・オブ・ザ・ワールド 日本各国要覧と最新統計 2016 Vol.28』 # p.6 # 日本の主な河川(の長さ。流域面積ではない) # 日本の主な河川の名称は、この目的上、必要ないの…

『多変量解析がわかる(ファーストブック)』 第1章 多変量解析の準備 をR(R言語)で

Rコードについて 主にデータが記載されているところだけ。 標準偏差 p.21~ Rコード # 標準偏差 p.21~ df <- data.frame(個体番号 = 1:5, x = c(51, 49, 50, 57, 43)) df # 平均 xbar <- sum(df$x) / length(df$x) xbar # 偏差平方和 Q <- sum((df$x - xbar)^…

いろんなデータの分布をR(R言語)で可視化 ヒストグラムと密度推定曲線と散布図 世界の主な河川

Rコード # 分布 ヒストグラムと密度推定曲線と散布図 # 使用するデータは、『データブック・オブ・ザ・ワールド 世界各国要覧と最新統計 2016 Vol.28』 # p.6 # 世界の主な河川(の長さ。流域面積ではない) # 世界の主な河川の名称は、この目的上、必要ないの…

『マンガでわかる統計学 回帰分析編』p48~49 偏差平方和 分散 標準偏差 をR(R言語)で

Rコード # 『マンガでわかる統計学 [回帰分析編]』 # 偏差平方和・分散・標準偏差 p.48~49 カラオケ対決の結果 <- data.frame(みうチームの点数 = c(48, 32, 88, 61, 71), りさチームの点数 = c(67, 55, 61, 63, 54)) カラオケ対決の結果 みうチーム <- カラ…

『悩めるみんなの統計学入門 統計学で必ず押さえたい6つのキーワード』をR(R言語)で

第2章 Rコード # 『悩めるみんなの統計学入門』 # # 個人的に割愛しているところ多々あり。 # 第2章 分散 # p.46~ 三人の練習タイム <- data.frame(吉田 = c(133.2, 127.7, 131.9, 133.5, 126.6), 桜庭 = c(143.8, 128.6, 120.2, 147.8, 122.0), 大江 = c(12…

いろんなデータの分布をR(R言語)で可視化 ヒストグラムと散布図 日本の主な火山

Rコード # 分布 ヒストグラムと散布図 # 使用するデータは、『データブック・オブ・ザ・ワールド 世界各国要覧と最新統計 2016 Vol.28』 # p.5 # 日本の主な火山 # 火山の名称は、この目的上、必要ないので省略 # 文字化けする場合 par(family = "Osaka") 日…

単回帰分析 対応するデータから予測 R(R言語)で

Rコード # 対応するデータからの予測 単回帰分析 新生児体重と胎盤重量 <- data.frame(No = 1:10, 新生児体重x = c(3470, 2550, 2920, 2530, 3280, 2840, 2520, 3350, 3610, 3430), 胎盤重量y = c(760, 490, 580, 520, 550, 480, 400, 560, 590, 530)) 新生…