【发布时间】:2025-12-09 07:00:02
【问题描述】:
我有两个数据框,一个包含调查日期的详细信息,另一个包含正在记录的个人实例。如下:
Records <- data.frame("Location"=c("A","A","B","C","C","C","D"),
"Date"= c("09/01/2017","12/01/2017","20/01/2017","06/06/2017","03/06/2017","19/01/2017","02/01/2017"),
"Individuals"= c(3,2,6,4,0,1,6))
Surveys <- data.frame("Location"=c("A","B","C","D","A","B","C","D"),
"Start"= c(rep("01/01/2017",length=4),rep("01/06/2017",length=4)),
"End"= c(rep("01/02/2017",length=4),rep("01/07/2017",length=4)))
> Surveys
Location Start End
1 A 01/01/2017 01/02/2017
2 B 01/01/2017 01/02/2017
3 C 01/01/2017 01/02/2017
4 D 01/01/2017 01/02/2017
5 A 01/06/2017 01/07/2017
6 B 01/06/2017 01/07/2017
7 C 01/06/2017 01/07/2017
8 D 01/06/2017 01/07/2017
> Records
Location Date Individuals
1 A 09/01/2017 3
2 A 12/01/2017 2
3 B 20/01/2017 6
4 C 06/06/2017 4
5 C 03/06/2017 0
6 C 19/01/2017 1
7 D 02/01/2017 6
我希望在调查数据框中添加一列,汇总在该站点和相关时间段内发生的个人数量。结果如下所示:
Sum.Individuals <- c(5,6,1,6,0,0,4,0)
Final <- cbind(Surveys,Sum.Individuals)
> Final
Location Start End Total.Individuals
1 A 01/01/2017 01/02/2017 5
2 B 01/01/2017 01/02/2017 6
3 C 01/01/2017 01/02/2017 1
4 D 01/01/2017 01/02/2017 6
5 A 01/06/2017 01/07/2017 0
6 B 01/06/2017 01/07/2017 0
7 C 01/06/2017 01/07/2017 4
8 D 01/06/2017 01/07/2017 0
我希望这是有道理的,任何帮助表示赞赏。
干杯
【问题讨论】: