【发布时间】:2012-07-01 19:23:30
【问题描述】:
对 R 来说相对较新,所以提前为自己的无能表示歉意。
多年来,我在一个国家的多个地点处理多个(非常大的)观测数据集。我需要计算在第 x 周提交观察的站点总数中在第 x 周注意到特定物种的站点的比例(基本上是存在/不存在数据。)我有一个数据集可以提供每个个体的详细信息物种观察,以及每周的观察总数。因此,我需要一些函数来计算该物种在该周记录的站点数量,然后将其除以在同一周内记录任何物种观察的站点总数。 观察记录以一周(1-53)和一年(1995-2011)记录。
species.data 示例(以 csv 格式列出以方便粘贴):
SITE_ID, SPECIES, WEEKNO, YEAR
1289, Attenb., 1, 1995
1538, Attenb., 1, 1995
1894, Attenb., 2, 1995
1286, Attenb., 4, 1995
1238, Attenb., 7, 1995
1892, Attenb., 7, 1995
以及total.obs.data的例子:
YEAR, WEEKNO, TOTALOBS,
1995, 1, 100
1995, 2, 780
1995, 3, 100
1995, 4, 189
1995, 5, 382
1995, 6, 100
1995, 7, 899
1995, 8, 129
(所以我不认为 1995 年第 1 周的比例是 2/100,并且能够构建 GLM 或 GAM)
【问题讨论】:
-
你的问题并不难。您可以使用重塑和一些子集的组合很容易地做到这一点。但请提供可重现的样本数据集以供使用。例如第二个数据集中的物种在哪里?
-
如果它是一个大数据集,
data.table包可能是你的朋友。 -
正如@TylerRinker 评论的那样,请定义“非常大”数据集的含义。有大的、大的和大型的数据集。
标签: r