「条件に合う行数をカウントする方法」なんだけど,いろいろやってもうまくいかないことがあるのでと愚痴った挙げ句の果てに,
> library(dplyr)
> count(iris, Petal.Length>5)
Source: local data frame [2 x 2]
Petal.Length > 5 n
1 FALSE 108
2 TRUE 42
が,「dplyr は直感的だし,とても便利」なんですと。私の Mac じゃ,動かなかったけど。
> table(iris$Petal.Length>5)
FALSE TRUE
108 42
で十分じゃん!!基本機能でできるんだから。
足らぬ足らぬは,工夫が足らぬ(いや,基本的な知識が足らぬ)
> length
を駆使して、length(XXX[XXX$xxx>0,])
としても何故か欲しい値が返ってきません。
そんなことしても,欲しい値が帰ってこないのはあたりまえ。nrow を使いなさいな。
> nrow(iris[iris$Petal.Length>5,])
[1] 42
または,もっと簡単に(というか,そうするのが普通だが),以下のように。
> sum(iris$Petal.Length>5)
[1] 42
何事も中途半端なら,ほかの何をやっても中途半端。