我是一个 R 新手,用来尝试分析植物物种的一些人口统计数据。我的数据框包括:
TagKey(唯一标识符)、Year(观察年份)、TagEstablished(首次发现植物的年份)和 StageClass(0=死亡,1=幼苗,2=植物,3=繁殖)。每年参观工厂都有一行,但我希望每株植物有 1 行,然后是每年的状态列。这是为了逐年跟踪个人的状态。
示例数据:
TagKey <- c(PDPLM040J0_ALIFOR01_Belt_0, PDPLM040J0_ALIFOR01_Belt_0, PDPLM040J0_ALIFOR01_Belt_0, PDPLM040J0_ALIFOR01_Belt_1, PDPLM040J0_ALIFOR01_Belt_1, PDPLM040J0_ALIFOR01_Belt_1)
Year <- c(2020, 2020, 2020, 2021, 2021, 2021)
TagEstablished <- c(2020, 2020, 2020, 2020, 2020, 2020)
StageClass <- c(1, 2, 3, 0, 3, 3)
ALFO_stages <- data.frame(TagKey, Year, TagEstablished, StageClass)
我尝试使用 ddply:
ALFO_status <- ddply(ALFO_stages, .(TagKey), dplyr::summarize,
Year_Established = TagEstablished,
Status2020 = if(Year=="2020") {StageClass},
Status2021 = if(Year=="2021") {StageClass})
我的输出没有按需要按 TagKey 分组。输出对于它们各自的年份是正确的,但不适用的年份只是吐出 NA。帮助?