2016-04-24 89 views
0

我有一個名爲「sourceToDestination」的90k行data.frame。找到從一個數據幀出現在另一個數據幀中的行數R

enter image description here

許多在data.frame這些行的上述被複制。使用獨特的命令,我創建了另一個data.frame,其中只列出了上述data.frame中的唯一行,並將其命名爲「sourceToDestinationUnique」。

enter image description here

現在,在這個data.frame,顯示獨特的價值觀,我想在最後列出數增加另一列。 count列指定了每個這些唯一行在原始data.frame中出現的次數。

我使用下面的命令來檢查獨特data.frame第1行多少次出現在原data.frame嘗試:

> sourceToDestinationUnique[1,] %in% sourceToDestination 

但它給我這個奇怪的答案:

[1] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE 

請讓我知道使用哪個命令?謝謝。

回答

1

我建議另一種方式,可以歸檔你的目的:

sourceToDestinationUnique <- aggregate(list(dupCount=rep(1,nrow(sourceToDestination))), sourceToDestination, length) 

讓我們打印出DF sourceToDestinationUnique看到的結果。

+0

非常感謝。順便提一下,假設我想知道'dupCount'列中所有行的索引號,即如果'dupCount'中的行的值爲5,表示它發生5次。我如何知道這5個指標,以便我可以查找它們? –

+1

aggregate(x = list(dupIndices =(1:nrow(sourceToDestination))),sourceToDestination,cbind) – NangSaigon

+1

or:aggregate(x = list(dupIndices =(1:nrow(sourceToDestination))),sourceToDestination,FUN = function x)c(cbind(x),length(x))) – NangSaigon

相關問題