下面是我原始数据框的一小部分。我需要结合在特定季节重复特定id
的行,其lic
和vessel
不同。通过结合我需要总和qtty
和grossTon
。合并行并总结其值
请以season 1998
中的id 431
为例(*)。
season lic id qtty vessel grossTon
…
1998 16350 431 40 435 57
1998 16353 431 28 303 22.54
…
相同受试者431
具有两个不同的lic
(16350 & 16353)和两种不同的vessels
(435 & 303)。预计在这种特殊情况下的结果是:
season lic id qtty vessel grossTon
…
1998 16350 431 68 435 79.54
…
我不介意这lic
和vessel
提醒结果行中,我要的是保持season
,id
所得的qtty
和grossTon
总和。在上面的例子中,我手动选择了lic 16350
和vessel 435
。
说实话,我不知道该怎么做,所以我非常感谢任何帮助。
感谢
原始数据(* =行进行组合)
season lic id qtty vessel grossTon
1998 15593 411 40 2643 31.5
1999 27271 411 40 2643 31.5
2000 35758 411 40 2643 31.5
2001 45047 411 50 2643 31.5
2002 56291 411 55 2643 31.5
2003 66991 411 55 2643 31.5
2004 80581 411 55 2643 31.5
2005 95058 411 52 NA NA
2006 113379 411 50 10911 4.65
2007 120894 411 50 10911 4.65
2008 130033 411 50 2483 8.5
2009 139201 411 46 2296 50
2010 148833 411 46 2296 50
2011 158395 411 46 2296 50
1998 16350 431 40 435 57 # *
1998 16353 431 28 303 22.54 # *
2000 37491 436 50 2021 19.11
2001 47019 436 50 2021 19.11
2002 57588 436 51 2021 19.11
2003 69128 436 51 2021 19.11
2004 82400 436 52 2021 19.11
2005 95599 436 50 2021 19.11
2006 113126 436 50 2021 19.11
2007 122387 436 50 2021 19.11
2008 131126 436 50 2021 19.11
2009 140417 436 50 2021 19.11
2010 150673 436 50 2021 19.11
2011 159776 436 50 2021 19.11
此外,我需要保留那些只有一个id
每个赛季之前和之后的行。像这样的:(被合并后产生的* =行)
season lic id qtty vessel grossTon
1998 15593 411 40 2643 31.5
1999 27271 411 40 2643 31.5
2000 35758 411 40 2643 31.5
2001 45047 411 50 2643 31.5
2002 56291 411 55 2643 31.5
2003 66991 411 55 2643 31.5
2004 80581 411 55 2643 31.5
2005 95058 411 52 NA NA
2006 113379 411 50 10911 4.65
2007 120894 411 50 10911 4.65
2008 130033 411 50 2483 8.5
2009 139201 411 46 2296 50
2010 148833 411 46 2296 50
2011 158395 411 46 2296 50
1998 16350 431 68 435 79.54 #*
2000 37491 436 50 2021 19.11
2001 47019 436 50 2021 19.11
2002 57588 436 51 2021 19.11
2003 69128 436 51 2021 19.11
2004 82400 436 52 2021 19.11
2005 95599 436 50 2021 19.11
2006 113126 436 50 2021 19.11
2007 122387 436 50 2021 19.11
2008 131126 436 50 2021 19.11
2009 140417 436 50 2021 19.11
2010 150673 436 50 2021 19.11
2011 159776 436 50 2021 19.11
目前还不清楚你想如何处理'vessel'? – 2013-05-14 04:52:19
这听起来像'?merge'和'?aggregate'可能有帮助。 – Frank 2013-05-14 04:54:23
@frank,我不确定在这个例子中会合并什么?我认为在标题中使用了“合并”,但函数似乎不是必需的,除非我正在阅读错误的问题 – 2013-05-14 04:59:55