Rを使って自分サイトの解析2

前回Rを使って自分サイトの解析をおこないましたが、残念なことに決定係数が0.4331とPVの影響になんの影響も与えていないことが判明。
気を取り直して別の指標で検証してみることにしました。

今回使っていくデータは、投稿数とその頻度。

データは以下の通り。

> data
date PV Post Visit Bounce_rate
1 2013/3/2 184 1 26 0.2500
2 2013/3/3 58 5 14 0.4000
3 2013/3/4 4 0 4 1.0000
4 2013/3/5 16 0 10 0.5000
5 2013/3/6 5 0 4 0.7500
6 2013/3/7 8 0 7 0.8000
7 2013/3/8 17 2 8 0.5000
8 2013/3/9 11 0 6 0.6667
9 2013/3/10 3 0 2 0.5000
10 2013/3/11 3 0 3 1.0000
11 2013/3/12 5 0 5 0.7500
12 2013/3/13 10 0 7 0.8571
13 2013/3/14 13 1 8 0.8333
14 2013/3/15 27 2 17 0.1667
15 2013/3/16 2 0 1 0.0000
16 2013/3/17 11 1 9 0.5000
17 2013/3/18 4 0 4 1.0000
18 2013/3/19 5 1 5 0.7500
19 2013/3/20 29 1 17 0.4286
20 2013/3/21 10 0 7 0.5000
21 2013/3/22 77 0 59 0.5185
22 2013/3/23 31 1 17 0.2857
23 2013/3/24 43 1 23 0.5714
24 2013/3/25 17 0 12 0.6000
25 2013/3/26 7 1 6 0.8333
26 2013/3/27 5 0 5 1.0000
27 2013/3/28 13 0 10 0.6000
28 2013/3/29 9 0 6 0.7500
29 2013/3/30 14 1 6 0.6000
30 2013/3/31 21 0 14 0.6000
31 2013/4/1 8 0 6 0.8000
32 2013/4/2 16 0 14 0.5000
33 2013/4/3 10 0 9 0.8889
34 2013/4/4 24 0 16 0.6000
35 2013/4/5 17 0 12 0.8333
36 2013/4/6 21 1 10 0.2000
37 2013/4/7 8 0 6 0.6000
38 2013/4/8 4 0 4 1.0000
39 2013/4/9 6 0 5 0.8000
40 2013/4/10 14 1 9 0.3333

解析手順は今回も以下のようにおこないます。

手順1 視覚化
手順2 基礎統計量調査
手順3 重回帰分析とその検証

手順1 視覚化
個人的に大好きな散布図行列で視覚化。
散布図と相関係数を一気見できるこのグラフは「同時」「ランダム」フェチの私には堪らない一品。

使用するには、psychというパッケージが必要なのでひとまずインストール。

install.packages(“psych”, dep=TRUE)

そして、呼び出し。

> library(psych)

次のパッケージを付け加えます: ”psych”

The following object(s) are masked from ‘package:car’:

logit

そして、出力。

> pairs.panels(data.set, smooth=FALSE, density=FALSE, ellipses=FALSE, scale=TRUE)

パラメータは以下のとおり。
smooth: 平滑線の描画の有無(今回は表示しない)
density: ヒストグラムにカーネルを重ねるかの有無(今回は重ねない)
ellipses: 散布図に相関を円で表したものを表示するか否か(今回は表示しない)
scale: 上側の相関係数の表示の大きさを相関の強さで変えるか(今回は変える)

スクリーンショット 2013-04-11 1.53.44

まずは相関係数から。
PVとVisitは相変わらず0.65と相関関係がありそう(若干低い気がするけど)。
今回新たに足した変数「Post」はやっぱり捨てがたい、と思いつつ次の検証。

手順2 基礎統計量調査

> summary(data.set)
PV Post Visit Bounce_rate
Min. : 2.00 Min. :0.0 Min. : 1.00 Min. :0.0000
1st Qu.: 5.75 1st Qu.:0.0 1st Qu.: 5.00 1st Qu.:0.5000
Median : 11.00 Median :0.0 Median : 7.50 Median :0.6000
Mean : 19.75 Mean :0.5 Mean :10.32 Mean :0.6267
3rd Qu.: 18.00 3rd Qu.:1.0 3rd Qu.:12.50 3rd Qu.:0.8083
Max. :184.00 Max. :5.0 Max. :59.00 Max. :1.0000

手順3 重回帰分析とその検証
続いて、重回帰分析を。

> dataset.lm <- lm(PV~.,data=data.set) 重回帰分析を変数に格納。 それでsummary()関数で概要を見てみます。 > summary(dataset.lm)

Call:
lm(formula = PV ~ ., data = data.set)

Residuals:
Min 1Q Median 3Q Max
-31.661 -6.406 -1.512 2.132 125.681

Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 8.8464 13.5099 0.655 0.517
Post 5.8675 4.2255 1.389 0.173
Visit 1.8475 0.3966 4.658 4.25e-05 ***
Bounce_rate -17.7219 16.5244 -1.072 0.291

Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ‘ 1

Residual standard error: 22.61 on 36 degrees of freedom
Multiple R-squared: 0.4967, Adjusted R-squared: 0.4547
F-statistic: 11.84 on 3 and 36 DF, p-value: 1.519e-05

何っ? 調整済決定係数が0.4547だと?
前回検証した変数「訪問者数」「直帰率」の調整済決定係数が0.4331で今回コレ?
おかしい。共線性が出ているのか?

> data.set3 <- data[c("Visit","Bounce_rate","PV")] 結果、Adjusted R-squared: 0.441 > data.set4 <- data[c("Visit","PV")] 結果、Adjusted R-squared: 0.4133 > data.set5 <- data[c("Bounce_rate","PV")] 結果、Adjusted R-squared: 0.1418 共線性ではない。 これはズバリ、母数が少なくて検証に値しないということか? 確か母数が少ない場合の解析の仕方があったなぁ。 それはまた次回に。 うーん。

Leave a Reply

%d人のブロガーが「いいね」をつけました。