裏 RjpWiki

Julia ときどき R, Python によるコンピュータプログラム,コンピュータ・サイエンス,統計学

この件は余りがんばらなくてもいいです

2013年07月30日 | ブログラミング

t 検定(対応のない場合)」pdf ファイルだけど...

以前にも,「for で処理すると,処理対象の変数名が出ないのがイヤだ」というのに対して,mapply などというつまらないものを勧めたのだけど,今回は,もっとつまらないものを紹介してみよう。

> まとめて一気にやりたいなら,以下のように for を使ってやることもできます。
> でも,やはり変数名が a と表示されてしまうので,間違えてしまいそう...
> for(a in 26:28) {
>     print(t.test(xx[,a] ~ xx$
性別))
> }

これを,以下のようにします。

# 以下の 3 行は,テストデータ作り
xx ← data.frame(matrix(rnorm(100), 20))
colnames(xx) ← LETTERS[1:5]
xx$性別 ← factor(rep(c("male", "female"), each=10))
# かなりトリッキーに
lapply(colnames(xx)[2:5], function(a) {
    eval(parse(text=sprintf(
        "t.test(xx$%s ~ xx$性別)"
    , a)))})

こうすれば,変数名が出ますが,そこまでしなくても,for ループの中で,cat などで対象変数名を書き出しておくだけで十分でしょう。

for (a in 26:28) {
    cat("Variable:", colnames(xx)[a], "\n")
    print(t.test(xx[,a] ~ xx$性別)
}


コメント    この記事についてブログを書く
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする
« ダメ出し:使うべき関数を使おう | トップ | もっとがんばりましょう:定... »
最新の画像もっと見る

コメントを投稿

ブログラミング」カテゴリの最新記事