Rプロジェクトの概要

Rプロジェクトのロゴ 上記のトピックに関する記事は、Habré全体で数件しか見つかりませんでした。 そして、トピックは優雅です。 そして先週の水曜日、コース「 計算ファイナンスと金融計量経済学入門 」はちょうど終わりました。 5週間目の記述統計に基づいて、この投稿が掲載されました。 参加者は面白くないでしょうが、 Rを使用したデータ分析の基本的なテクニックに精通したい人のために-habracatをお願いします。

予備協定


用語について

統計の作成者は、N年前に「ターバー」の学期しかありませんでした。 したがって、疑わしく翻訳された単語とその組み合わせの後、元の英語の用語が示されます( カッコ内の斜体 )。 スペシャリストは、個人でより正確な用語のバリエーションを送ってください。 ありがとう

インストールについて

ソフトウェアのインストールでは、些細なことを考慮して、意図的に注意が集中していません。 少なくともWindowsプラットフォームでは、標準の「next-> next-> ...-> ready」になりました。 記事で実行されるコードに必要な唯一のPerformanceAnalyticsパッケージは、「パッケージ/パッケージのインストール...」メニューからインストールされ、最も近いミラーを選択し、リストから目的のパッケージを選択します。

データセット


典型的なものを避けたかった:販売、アパート、在庫返品単純な返品 )-私はいくらですか? したがって、サンプルのサブジェクト領域は、Habrのコンテキストとそのコンテキスト外の両方で永遠です。 少し前のことですが、SamiKogoのブログは「あなたの胸どれくらい大きいですか?」 無関係なオーディエンスを除外するための2つの回答オプションが含まれていることを考えると、サンプルの可能性にはある程度の自信があります。 便宜上、結果は次のとおりです。
テーマからの投票結果

目的


ミニスタディでは、2つのデータセットの正規分布と比較します。

経験豊富な統計学者にとっては、2番目のオプションを変更することにより、正規分布からの分布を放棄することは明らかです。 記事の終わりまでに、これを正式に正当化するのに十分な情報を蓄積しました。

研究の進捗


開始するには、データセットを変数に入れます。
data = c(rep(0, 184), rep(1, 510), rep(2, 996), rep(3, 763), rep(4, 327), rep(5, 147), rep(6, 60)) data_ol = c(data, rep(0, 51), rep(7, 65)) x.txt = " " #       

関数cは引数を単一のベクトルに「接着」し、rep(x、y)関数はxのy値のベクトルを返します。 たとえば、rep(0、184)は、184個のゼロのベクトルを返します。 Googleの推奨事項や他のいくつかの情報源では、等号は割り当てに使用する価値はないという意見がありました。「<-」です。 知識のある人は、コメントに1文字ではなく2文字を書くために十分な理由を提供してください。 個人的には、著者にとって、この代替手段はPascal言語のoperator :: =に不便を与えます。

これで、ヒストグラムをプロットできます。
 par(mfrow=c(1, 2)) hist(data, breaks=0:7, right=F, col="seagreen", main=" 1", xlab=x.txt, ylab=" ") hist(data_ol, breaks=0:8, right=F, col="slateblue1", main=" 2", xlab=x.txt, ylab=" ") 

ヒストグラムを並べて表示するには、最初の行が必要です。 これがないと、2番目のヒストグラムが最初のヒストグラムを上書きします。 起こったことは次のとおりです。
サンプルヒストグラム
アンケートを思い出しますよね? 確かに、私たちの研究の特徴は、ヒストグラムに基づいてデータが生成されることです。 しかし、このステップには意味がないわけではありません。
  1. LJ非線形スケール(最初の回答の投票数による可能性が最も高い)。
  2. 両方のヒストグラムは同じスケールで描かれ、垂直方向に向けられています。これにより、 正規分布の確率密度( 確率密度関数 )と比較できます。

次のステップは、このような離散化されたデータセットに対してはほとんど意味がありません。 ここでは、サンプルからより「滑らかな」(読み取り、平均化)ヒストグラムを作成する密度関数に慣れるためにのみ説明します。
 plot(density(data), type="l", col="seagreen", lwd=2, main="  1") plot(density(data_ol), type="l", col="slateblue1", lwd=2, main="  2") 

結果:
平滑化された確率密度

サンプル分布パラメーターを計算します。
 mu = mean(data) mu mu_ol = mean(data_ol) mu_ol var(data) var(data_ol) sig = sd(data) sig sig_ol = sd(data_ol) sig_ol library(PerformanceAnalytics) skewness(data) skewness(data_ol) kurtosis(data)# excess kurtosis (-3) kurtosis(data_ol) 

結果:
いいえ。NDMat.Waiting分散標準偏差非対称性( 歪度過剰( 過剰尖度
12.4084371.7085421.3071120.41244430.1001578
22.4650342.178581.4760010.71987670.7943986

表からわかるように、2番目のデータセットの変更

経験的分布関数(EGF)を対応する正規分布の累積分布関数 (N(2.408437、(1.307112) 2 )およびN(2.465034、(1.476001) 2 ))と比較してみましょう。
 n1 = length(data) plot(sort(data), (1:n1)/n1, type="S", col="seagreen", main=" 1", xlab=x.txt, ylab="") x = seq(0, 6, by=0.25) lines(x, pnorm(x, mean=mu, sd=sig), type="l", col="orange", lwd=2) n2 = length(data_ol) plot(sort(data_ol), (1:n2)/n2, type="S", col="slateblue1", main=" 2", xlab=x.txt, ylab="") x2 = seq(0, 7, by=0.25) lines(x2, pnorm(x2, mean=mu_ol, sd=sig_ol), type="l", col="orange", lwd=2) 

結論:
経験的分布関数
分布関数から変位値、逆分布関数に渡します。
 quantile(data) quantile(data_ol) qnorm(p=c(0, .25, .5, .75, 1), mean=mu, sd=sig) qnorm(p=c(0, .25, .5, .75, 1), mean=mu_ol, sd=sig_ol) 

特定のケースでは、ステージはかなり退屈です。 サンプルの違いは100パーセンタイルのみです。
配布q 0q .25q .5q .75q 1
ND102236
N(2.408437、(1.307112) 2-Inf1.5268032.4084373.290070Inf
ND202237
N(2.465034、(1.476001) 2-Inf1.4694862.4650343.460582Inf

そして、ND1の四分位数が丸められていても正規分布のように見える場合、ND2は役に立ちません。

高度に離散化されたサンプルの分位数図( 通常のQQプロット )はあまり役に立ちません。 qqnorm関数を点灯するように言及しました。
 qqnorm((data-mu)/sig, col="seagreen") abline( 0, 1, col="orange", lwd=2) qqnorm((data_ol-mu_ol)/sig_ol, col="slateblue1") abline( 0, 1, col="orange", lwd=2) 

結果はエキサイティングに見えませんが、楽しいです:
分位スキーム

そして、口ひげboxplot )で視覚的な結論ボックスのリストを完成させます
 boxplot(data, outchar=T, main="   1", ylab=x.txt) boxplot(data_ol, outchar=T, main="   2", ylab=x.txt) 

グラフィックス:
口ひげボックス
この構造は、サンプルの堅牢な特性を明確に反映しています( 外れ値の存在に耐性があります)。

この場合の信頼区間は、第1四分位から第3四分位から1.5四分位範囲までの偏差と見なされます。 詳細については?? Boxplot。

おわりに


ND1は、ND2未満の正規分布を念頭に置いています。


追加情報


Rの代替入門資料:

2番目と3番目のリンクは、公式ドキュメントの一部です。 偉大で強力な賢明な入門記事へのリンクがあれば、書いてください-私は付け加えます。

この記事の主な目的は、分析ツールとしてRに注目を集めることです。 知識のある人がより詳細な資料を提供してくれたら、私は心から喜んでそれを読んで楽しみます。

プルーフリーダー-PM。 残り-コメントへようこそ。
ご清聴ありがとうございました。

Source: https://habr.com/ru/post/J160373/


All Articles