如何根据列值评估行?

时间:2013-06-26 15:41:55

标签: r operation

我的表格如下:

ID  period 1 period 2 period 3 period 4
A     4       2        25       42
B     3       56        2       45
C     16      1        34       67
D     56      2         8       48

我想在R中检查每行中多少次(cols),我得到的值小于10.例如,在行A中,我有两个低于10的值。 任何想法???

我使用了分位数值并获得了以下内容:

  

分位数(V [,2:5],na.rm = TRUE)      0%25%50%75%100%    1.00 2.75 20.50 45.75 67.00

但这不是我所需要的;我想知道低于10的值的百分比(或计数)。我尝试使用以下并且也没有工作:

  

限        [1] 10   v $ tot< -count(v,c(“ID”,“period1”,“period2”),wt_var = limit)`

实际数据集区域的前几行如下:

    id    1   2   3   4    5   6   7   8   9  10  11  12  13  14  15  16  17
1 xxxlll  61  36 277 462  211 182  45  41 128 174 179  87  18 NaN NaN NaN NaN
2 ccvvbb 281 340 592 455  496 348 422 491 408 548 596 611 570 580 530 602 614
3 ddffgr 587 964 895 866 1120 725 547  90 NaN NaN NaN NaN NaN NaN NaN NaN NaN
4 rrteww 257 331 320 411  442 316 334 403 355 444 522 661 508 499 520 413 494
5 oiertw 261 NaN NaN NaN  NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN

1 个答案:

答案 0 :(得分:1)

我想我会在OP没有的情况下添加答案,但在这种情况下我会使用rowSums和逻辑比较......

# '-1' drops the ID column
x <- rowSums( df[ ,-1 ] < 10 )
names(x) <- df$ID
x
#A B C D 
#2 2 1 2