12

結果の要素がいくつ条件を満たしているかを数えるためのより良い方法はありますか?

a <- c(1:5, 1:-3, 1, 2, 3, 4, 5)
b <- c(6:-8)
u <- a > b
length(u[u == TRUE])
## [1] 7
4

3 に答える 3

19

sumはこれを直接行い、論理ベクトル内のTRUE値の数をカウントします。

sum(u, na.rm=TRUE)

そしてもちろん、これのためにuを構築する必要はありません:

sum(a > b, na.rm=TRUE)

同様に機能します。 値のいずれかがである場合、デフォルトでsum戻ります。 合計の値を無視します(論理または数値の場合)。NANAna.rm=TRUENA

于 2012-12-17T01:42:38.967 に答える
8

私はいつもこれにテーブルを使用しました:

a <- c(1:5, 1:-3, 1, 2, 3, 4, 5)
b <- c(6:-8)
table(a>b)
FALSE  TRUE 
    8     7 
于 2012-12-17T03:22:49.707 に答える
8

またはzのみで構成されている場合は、単にTRUEFALSE

length(which(z))
于 2017-11-10T02:30:50.977 に答える