对r中数据表子集的逻辑运算

时间:2016-10-27 08:44:06

标签: r data.table logical-operators

我有一个奇怪的问题,我无法弄清楚:

我想对data.table的子集使用逻辑运算。

data[1:9, 1:12, with=FALSE]

   V1 V2 V3  V4  V5  V6  V7  V8  V9 V10 V11 V12
1:  F  2  3   4   5   F   7   8   9  10  11  12
2: 24 23 22  21  20  19  18  17  16  15  14  13
3: 25 26  F  28  29  30  31  32  33  34  35  36
4: 48 47 46  45  44  43  42  41  40  39  38  37
5: 49 50 N1  52  53  54  55  56  57 P48  59  60
6:  F 71 70  69  68   F  66  65  64  63  62  61
7: 73 74 75  76  77  78  79  80  81  82  83  84
8: 96 95 94  93  92  91  90  89  88  87  86  85
9: 97 98 99 100 101 102 103 104 105 106 107 108

这种情况很好:

data[1:9,1:12, with=FALSE] == 11

     V1    V2    V3    V4    V5    V6    V7    V8    V9   V10   V11   V12
[1,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE  TRUE FALSE
[2,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
[3,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
[4,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
[5,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
[6,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
[7,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
[8,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
[9,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE

但如果我使用的不是:

data[1:9,1:12, with=FALSE] <= 11
     V1    V2    V3    V4    V5    V6    V7    V8    V9   V10   V11   V12
[1,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE  TRUE  TRUE FALSE
[2,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
[3,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
[4,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
[5,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
[6,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
[7,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
[8,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
[9,] FALSE FALSE FALSE  TRUE  TRUE  TRUE  TRUE  TRUE  TRUE  TRUE  TRUE  TRUE

我想这可能与“chr-type”列有关,但是对于某些人我需要这个,我不清楚为什么==应该有效,而不是<=

感谢您的帮助!

0 个答案:

没有答案