R bin数据按唯一ID

时间:2014-04-09 07:48:52

标签: r dataframe binning

来自data.frame:

RowColFovCellID 1 Feret
001001000 1.1
001002000 0.3
001002000 0.2
001003000 1.5
001001000 3.4
001002000 2.4
003003001 0.7
001001000 3.6

我想通过唯一ID来存储数据,并将结果显示为数据框中的新列,例如:

RowColFovCellID 0-1 1-2 2-3 3-4 4-5
001001000 0 1 0 2 0
001002000 2 0 1 0 0
001003000 0 1 0 0 0
003003001 1 0 0 0 0

我尝试过使用ddply并进行剪切但到目前为止尚未对其进行管理。

由于

2 个答案:

答案 0 :(得分:0)

我建议你采取两步走的方法来完成你的目标。首先,在data.frame中创建一个额外的列,在该列中,您可以在变量' Feret'中对观察到的值进行分类。然后,您使用xtable中的xtable package来创建上面显示的交叉表。

答案 1 :(得分:0)

您提到您尝试了cut,但没有显示您尝试过的内容。

这似乎是一个直截了当的table问题。假设您的data.frame被称为" mydf"你的专栏是" RowColFovCellID"和" Feret",尝试:

table(mydf$RowColFovCellID, cut(mydf$Feret, 0:5))
# 
#         (0,1] (1,2] (2,3] (3,4] (4,5]
# 1001000     0     1     0     2     0
# 1002000     2     0     1     0     0
# 1003000     0     1     0     0     0
# 3003001     1     0     0     0     0