Rの覚え書き 3

なんとなく分かってきたので Baayen本 Ch1 練習問題をする.まず

head(spanishMeta, n=5)

でどんなデータフレームか見る.コラムは,

Author YearOfBirth  TextName PubDate Nwords FullName

のようだ.行数だが

nrow(spanishMeta)

nrow(spanishMeta[spanishMeta$TextName,])

でも同じ数15だったので前者でいいのだろう.

「それぞれの著者について,いくつのテキストがあるのか,そして出版年の平均を出せ」とあっていきなりわからない.15行なので,

spanishMeta[,]

で全体をみてもいいがそういうことではないだろう.まず

levels(spanishMeta$Author)

で値の種類をみてから,

nrow(spanishMeta[spanishMeta$Author == “C”,])

でその値の行の数だけ数える,ということだろう.

と思ったら,解答は

xtabs( ~ Author, data=spanishMeta)

であった.これで全部一気に出る.

続いて出版年の平均であるが,

mean(spanishMeta$PubDate)

ですべての平均が出るので,これを制限して

mean(spanishMeta[spanishMeta$Author == “C”, ]$PubDate)

などなどでCだけのデータなどが出るだろう.もっと賢いやり方は,

tapply(spanishMeta$PubDate, spanishMeta$Author, mean)

だろう(これはあっていた).1項めを,2項めのレベル・値に応じて3項目の関数を適用する,ということかな.

orderを用いた並べ替えも大丈夫.もただ,

sort(v, decreasing = TRUE)

で通常とは逆ということ.merge も要素数とか合わせずともそのままやればいいようだ.この練習問題で他に気づいたことは以下である.

== ではなく < にすれば「より以下」が指定できる.

length(x)

でxの要素数が出るので,xの平均は

mean(x)

でもいいし,

sum(x)/length(x)

でもよい.この練習問題はまあできた.

R. H. Baayen, 2008, Analyzing Linguistic Data: A Practical Introduction to Statistics using R

Rの覚え書き 2

R. H. Baayen, Analyzing Linguistic Data: A Practical Introduction to Statistics using R

第一章.一応コマンドをすべてまねして言われた通りの結果を計算するが,とてもではないがコマンドを理解しているとは言えない.練習問題ができそうにないので,他の tutorial もみながらやり直す.

data frame とは同じ長さの vector を並べたものである.表を考えて,data frame の vector 要素は一つの列とすればよさそうだ.だから

名前[a, b]

でa行目b列目の値を指定することになる.

名前[ , b]

でb列の要素,bベクトルの要素をすべて表示となる.列の名前bに$をつけると同じようにbの要素をすべて書き出す.

さて verbs には AnimacyOfTheme列があり,ここの二つの可能な値は animate か inanimate である(そしてほとんどが inanimate である).verbs$AnimacyOfTheme で901行分の animate/inanimateが羅列される.ここで verbs$AnimacyOfTheme == “animate” とすると,901行分の TRUE/FALSE が書き出される.==が同値の論理記号のようだ.これを使えば,animacyがTRUEの行だけ指定することができる.

verbs[verbs$AnimacyOfTheme == “animate”, ]

コンマの左,ということは行指定で,これこれが真であるような行,という意味であろう.直感的と言えば直感的かもしれない.これでとりあえず表の部分を指定することができる.

ちなみに,データフレームとともに説明なく出てくる head 関数は二項関数で

head(x, n=i)

xがデータフレーム,i番目までの行を提示する,というもののようだ.headなのは後ろのi番目までの行を提示する tail(x, n=i)があるからだ.

Weak Crossover Literature 弱交差関連文献集

  • Koopman, Hilda, and Dominique Sportiche. 1982. Variables and the Bijection Principle. The Linguistic Review 2:139–160.

The Bijection Principle states that an operator cannot bind two variables at the same time and so excludes:

??Who_i does his_i mother like t_i

??[every boy_i] his_i mother loves t_i

where both his_i and t_i are variables. The SCO sentence

*Who__i does he_i like t_i?

is not excluded by the Bijection Principle (it’s a Condition C effect) because the trace is no longer considered a variable under their definitions.

  • Ruys, E. G. 2000. Weak crossover as a scope phenomenon. Linguistic Inquiry 31:513–539

Ruys argues for a scope-theoretic approach to weak crossover phenomena.

  • Ruys, E. G. 2004. A Note on Weakest Crossover

Ruys extends (Ruys 2000) to the weakest crossover facts and crossover in topicalization constructions.

Rの覚え書き 1

テキストを R. H. Baayen 著 Analyzing Linguistic Data: A Practical Introduction to Statistics using R としてとりあえずやってみる.

http://cran.r-project.org

のMac OS X の場所から “Pumpkin Helmet” R 3.1.2 をダウンロードした.パッケージを開いてインストール(140メガほど必要)した.続いて RStudio をダウンロードした.

http://www.rstudio.com/products/rstudio/download/

http://morizyun.github.io/blog/statistics-analysis-bigginer-r/

ここの「はじめての「R」」を参考にした.1.2 R as a calculator の部分は直ぐできたので,続いてもっとそれらしい

1.2 Getting data into and out of R

に移る.いわれるがままにパッケージをインストールする

install.packages(c(“rpart”, “chron”, “Hmisc”, “Design”, “Matrix”, “lme4”, “coda”, “e1071”, “zipfR”, “ape”, “languageR”), repos = “http://cran.r-project.org&#8221;)

error がでたので,調べると言語環境関係のようだ.ちなみにMac OS X 10.9.5を使っている.

Terminal で defaults write org.R-project.R force.LANG en_US.UTF-8 と入力すると解決したようだ.

さてlanguageRパッケージに含まれているサンプルを導入したいので

head(verbs, n = 10)

と読み込んだが,verbs が見つからないという.よくわからないが,RStudio右下のウィンドウの packages のタブから,languageRにチェックを加えるとうまくいった.example(verbs)などと入れるとプロットの例などが見れる.