data.frame中的元素计数

时间:2012-11-19 21:21:16

标签: r count group-by

我有数据说明穿越一系列“大门”的飓风轨道。如何编码它以输出GateID,以及每个GateID在总数据帧中出现的次数?

track_id    day hour    month   year    rate    gate_id pres_inter  vmax_inter
9   10  0   7   1   9.6451E-06  2   97809   23.545
9   10  0   7   1   9.6451E-06  17  100170  13.843
10  3   6   7   1   9.6451E-06  2   96662   31.568
13  22  12  8   1   9.6451E-06  1   94449   48.466
13  22  12  8   1   9.6451E-06  17  96749   30.55
16  13  0   8   1   9.6451E-06  4   98702   19.205
16  13  0   8   1   9.6451E-06  16  98585   18.143
19  27  6   9   1   9.6451E-06  9   98838   20.053

header <- read.table(fname_in, nrows=1)
track <- read.table(fname_in, sep=',', skip=1)
colnames(track) <- c("ID", "day", "month", "year", "hour", "rate", "gate_id", "pres_inter", "vmax_inter")

我想我想计算每个gate_id的出现次数,也可能输出每个门的最大风量(vmax_inter)等等。

1 个答案:

答案 0 :(得分:1)

完全阅读你的想法,因为你没有提供任何具体的东西。但如果GateID是您的某个数据框列,则可以使用包GateID中的count获取每个唯一plyr的计数以及其他参数。

install.packages("plyr")
library("plyr")
count(mydf, vars = "GateID")

安装后请参阅?count以获取更多详细信息。

关于问题的第2部分,请参阅?aggregate并考虑公式界面。例如,

aggregate(gate_id ~ vmax_inter, data = mydf, FUN = max)

或类似的东西。顺便说一下,您可以将两个read.table步骤与'read.csv`

组合在一起
相关问题