1

我的数据集看起来像这样

 98      11
 99.5    12
 100     12
 101     13
 100.2   10
 100.5   10.5

我想创建一个看起来像这样的结果集

         10-11   11-12  12-13  
 98-99    1      1       0
 99-100   0      1       0
 100-101  2      1       1

欢迎任何帮助。

4

1 回答 1

3

您的问题中没有很好地指定边界条件,您应该得到:

> table(cut(DS[,1], c(98:101), right=FALSE), cut(DS[,2], c(10:13), right=TRUE))

            (10,11] (11,12] (12,13]
  [98,99)         1       0       0
  [99,100)        0       1       0
  [100,101)       1       1       0

或这个:

> table(cut(DS[,1], c(98:101), right=FALSE), cut(DS[,2], c(10:13), right=FALSE))

            [10,11) [11,12) [12,13)
  [98,99)         0       1       0
  [99,100)        0       0       1
  [100,101)       2       0       1

但不是你在 OP 中展示的那个。

于 2014-03-28T18:44:26.473 回答