第7回R勉強会@東京 に参加してきた

第7回R勉強会@東京 (#TokyoR 07)に参加してきた。

ATND: 第7回R勉強会@東京(Tokyo.R#07) : ATND
Google Group: Google グループ


主催者の[Twitter:@yokkuns]さん、講師の[Twitter:@bob3bob3]さん、[Twitter:@yanashi]さん、[Twitter:@tyatsuta]さん、[Twitter:@mangantempy]さん、[Twitter:@sfchaos]さん、素敵なトークをありがとうございました。主催しているデータマイング+WEB 勉強会@東京に参加してくれているメンバーも多く、毎月会う馴染みのメンバーになってきた。懇親会でも深く話すことができ、統計解析やデータマイニングを通じ、素敵なメンバーに出会え、交流できていることに感謝。


以下、ツイートまとめ(Togetter)、公開されている講師資料、メモ、の覚書き。

Rによるやさしい統計学 第17章 : 共分散構造分析 (id:bob3, [Twitter:@bob3bob3])

メモ

・共通分散構造分析の特徴:
 ・構造方程式モデリング(SEM)
 ・因子分析と重回帰分析を組み合わせたもの
 ・複雑な変数間の関係を統計的に検証できる
 ・分散共通分散行列を用いる
 ・双方向のモデルも扱える
・出力
 ・適合度
 ・パス係数
・活用領域
 ・心理学・社会学で発達
 ・ブランド間関係性のスコア化(ベネッセ)
  ・信頼性の向上の向き
   ・ベネッセ→シマジロウ
   ・シマジロウ→ベネッセ
・市販ツール
 ・汎用的なソフトの中にはなく、個別にソフトが出ている。
  ・AMOS(SPSS) : よく使われる
  ・Mplus : 最強 (?)
・パス図
 ・外生変数
 ・内生変数

・難しさ:
 ・モデルの自由度が高い
 ・潜在変数のおき方
 ・潜在変数に関する制約のおき方
・分析の流れ
 ・仮説に基づきモデルを得ガス
 ・分析実行パス係数などのパラメータ適合度を評価
 ・モデルの改良

・Rで構造分析 (sem package)
SEMで重回帰分析モデル
SEMで因子分析モデル
 ・確認的因子分析
  ・仮説に変数が当てはまっているか
  ・一部パス係数を固定し実行
 (・探索的因子分析 (通常)
   ・事前に仮説を設定しない
   ・全てのパス係数を変数とする)
 ・制約
  ・分散を指定
 ・適合度の指標
  ・GFI
  ・AGFI
  ・CFI
  ・RMSEA
  ・BIC
 ・修正指標
 ・出力
  .言語を描画用ツールで表示
  (graphviz 等。ezgraphvizを使った。)

・多次元指標モデル
 ・用いたデータ
  ・本:マーケティングのデータ分析
 ・探索的因子分析
 ・仮説作り
  ・便益、情緒便益、自己表現便益

・参考
 ・RでSEM入門 (Osaka.R)

・bob3さん、どのくらいまでモデル洗練しているか
 ・最低限の指標のライン
 ・解釈できるレベル

PythonとR (id:yanashi, [Twitter:@yanashi])

メモ

・R+Pythonを使う
 ・RPyを使う
・メリット
 ・Pythonの豊富なライブラリを、Rの統計解析環境と連携させることができる。
 ・Webフレームワーク
 ・描画環境(Rだとggplot2)
  ・Flash
  ・Silverlight
  ・Processing、などとの連携
 ・出力結果を直接Excelに書き込む
 ・WebAPI

 ・PyExcelerator
 ・Django-dataplot
  RPyの出力結果をPythonのWebフレームワークを連携させるためのパッケージ

・導入
 ・RとPythonを入れる
 ・RPyを入れる
 ・win32apiを入れる
 ・環境変数で R_HOMEを設定

・ソース例
 import rpy2.robjects as robjects
 r = robjects.r
 x = robjects.IntVector([1,2,2,2,2])
 y = robjects.IntVector([1,2,2,2,2])
 print r.cor(x,y)
参照:Rpy2でT検定と相関分析をやってみた - dataminer.me

・日本語は unicodeで指定

他:
自分もRPy2の環境をNotePCでも構築していたので、自分でもコードを動かしてみた。休憩時間に id:yanashi さんに、トーク中で薦められていたRPyを用いた描画に関し質問。2人で試してみるががRPyでは出力にはクセがあるよう。次の休み時間に話そうとするも、yanashi さんがいなくなっていた。yanashi さんの資料アップを楽しみにし、自分でも調べてみよう。

R Language Definition案内〜Rでハマったときのために〜 1.なぜ関数型言語でC-likeな記述を実現できるか (id:yatsuta, [Twitter:@tyatsuta])

・C-like, APL-like
・関数型
 ・プログラムの基本構造が関数定義と関数呼び出し
・Rの関数種類
 ・closure
 ・builtin
 ・special
・制御構造も関数

Rで麻雀 ([Twitter:@mangantempy])

メモ

・階乗 n! factorial(1,n)
・組合せ nCr choose(n,r)
・総和 sum(sapply(sum,myfunc))
・1枚に着目したときの揃う確率

RとC,C++の連携 ([Twitter:@sfchaos])

メモ

・職業:コンサル、金融工学のモデル構築
・RからC++ 呼び出し
 ・.C() 関数の利用
  ・用途:既存のライブラリを用いるとき
  ・SO,DLLを呼び出す
  ・Cソース
    ・ポインタで受け取るように書く
    ・externC を記述
    ・返り値はvoid、引数で返り値を指定
 ・.call() 関数の利用
  ・用途:短いC/C++のインターフェースを書いて呼び出すとき
   ・返値がR Object
   ・Cでの変数型 SEXP (Symbolic EXPression)
   ・.C()より C側が書きづらい Protectを書く
  ・Rccpパッケージ
   ・C側の記述が楽になる
C++からR 呼び出し
 ・詳細:Writing R Extensions
 ・Rinsideパッケージ
・どんな計算でC呼び出しのほうが速かったか:
 →速度に関してはためしていないので分からない。
  20ループの畳み込み計算ではRのままのほうが速かった。

5分で分かるRパッケージの作り方 (id:yokkuns, [Twitter:@yokkuns])

次回開催

8/28(土)