トップ 差分 一覧 ソース 検索 ヘルプ RSS ログイン

SetupAnalysis

分析の準備

  • テキストエディタの用意
    • 専門のテキストエディタの方が軽い。文字コード変換も簡単。
    • Macの場合  mi
    • Winの場合 例えば  mkeditor
  • 処理するデータなどのダウンロード
    • それぞれ適当な場所にダウンロードして解凍
    • ログ、読み込み用のプログラム(Winのみ)も
      • hyper4.txt hyper3-2.txt hyper3.txt hyper2.txt hyper1.txt faq.txt  ログ(掲示板への書き込み)
      • Logv32.exe  ログを読みやすくするソフト
    • データ、読み込みと処理のRプログラム
      •  拡張子とファイルの種類
      • .R Rプログラム   
      • .rda Rのデータセット(ファイル名はデータセット名に0をつけたもの。例えば ファイル 0MGdat.rda のデータセット名はMGdat)
      • 0MGdat.rda  MGdat ログデータセット
      • 0Mat.rda  Mat 行列形式のデータセット
      • dl, dl2ネットワーク形式にしたデータ  
    • 練習
      • テキストエディタで上の  hyper1.txt などを眺めてみる。
  • Rのインストール
    • このページを参考にしてRをインストールする。入門編 使ってみる、データセットになれる ぐらいまでしてみる。
    • 必要なライブラリのインストール
      • インターネットにつないだ状態でRのコマンド画面から下記のコマンドをコピー、ペースとしてリターン
      • サーバーを選ぶようにいわれたらtukubaやtokyoなどを選ぶ
install.packages(c("sna","foreign","chron","igraph"))
  • Rで上のMGdat などをいじってみる。
    • Rの ワーキングディレクトリを 上の 0MGdat.rdaがある場所に変更
    • mac その他> 作業ディレクトリの変更
    • windows file >chg dir 
      • 下記をRにコピー、ペースト (色つき部分をRの方に コピーペースト、リターンを押せばok)
library(sna)
load(file="0Mat.rda") 
dim(Mat)
#[1] 1067 1067 と出力されたはず 1067人×1067人の行列
m<- Mat[1:50,1:50] #一部のみとりだす
m
gplot(m)  #一部のみを社会ネットワークとして描画
gplot(m,label=rownames(m))  #一部のみを社会ネットワークとして描画
gplot(Mat)  #全員のを描いてみる
sr<-rowSums(Mat)  #行方向の和
sc<-colSums(Mat)  #列方向の和
par(mfrow=c(1,3))
hist(sr)  #ヒストグラム
hist(sc)
plot(sr,sc) #散布図
g<-sr+sc
m2<-Mat[g>20,g>20]   #20回以上やりとりしている者のみに限定
dim(m2)  #[1] 258 258
par(mfrow=c(1,1))
gplot(m2,label=rownames(m2))  #一部のみを社会ネットワークとして描画
gplot(m2,label=rownames(m2),mode="circle")  #プロットの方法を変える
gplot(m2,label=rownames(m2),mode="eigen")  #
gplot(m2,label=rownames(m2),mode="kamadakawai")  #
gplot(m2,label=rownames(m2),mode="mds")  #
gplot(m2,label=rownames(m2),mode="spring")  #
gplot(m2,label=rownames(m2),mode="spring",interactive=T)  #インタラクティブにもできる

#とりあえず回帰分析

res<-lm(sr~sc)
summary(res)
Residuals:
     Min       1Q   Median       3Q      Max 
-153.658   -1.242    0.992    2.070  168.374 

Coefficients:
            Estimate Std. Error t value Pr(>|t|)    
(Intercept) -2.069812   0.452570  -4.573 5.36e-06 ***
sc           1.077901   0.004673 230.645  < 2e-16 ***
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1 
Residual standard error: 14.22 on 1065 degrees of freedom
Multiple R-squared: 0.9804,	Adjusted R-squared: 0.9804 
F-statistic: 5.32e+04 on 1 and 1065 DF,  p-value: < 2.2e-16 
  • 練習
    • 発言数  300以上に限定して上の回帰分析を行うと結果はどうかわるか?
  • ありがちなエラー
    • ディレクトリを指定していないので ファイルがopenできない→上のようにディレクトリを指定する。
    • ライブラリがみつからない  →ちゃんとインストールする。
    • 大文字 小文字の区別
      • 練習  20回以上やりとりしている者のみに限定したが、それでもみづらいので 50回とか100回 以上に限定するとどうなるか?