我與這些值的數據幀(建立在這樣一種方式):選擇行等多個列沒有重複值
id1 = (c(1,1,2,2))
id2 = (c(10,11,10,11))
value =c(50,50,50,50)
df = data.frame(id1,id2,value)
df :
value id1 id2
1 50 1 10
2 50 1 11
3 50 2 10
4 50 2 11
我想只保留其中兩個ID1和ID2是唯一的行(ID1和ID2的每個值必須只出現一次),也有可能是每個ID的一個以上的重複:
df_unique :
value id1 id2
1 50 1 10
4 50 2 11
如果我使用複製命令上的一列,然後其他的,我會丟棄想要的行。
只要id1和id2中的每個元素都是唯一的,返回(1,11)和(2,10)的解決方案也是很好的。
與更多的行又如:
id1 = (c(1,1,1,2,2,2,3,3,3))
id2 = (c(10,11,12,10,11,12,10,11,12))
value =rep(50,9)
df = data.frame(id1,id2,value)
df:
id1 id2 value
1 1 10 50
2 1 11 50
3 1 12 50
4 2 10 50
5 2 11 50
6 2 12 50
7 3 10 50
8 3 11 50
9 3 12 50
當一個很好的答案是:(1,10),(2,11),(3,12),而且任何其他的答案在兩個ID1和id2出現一次都很好。
謝謝
雅各
你如何決定是否1,10; 2,11保留或可以是1,11; 2,10? – Ananta
在您的示例中,這兩個值都顯示兩次。我不明白你的問題。也許只是簡單地做「獨特的(df)」的 – TomR
。 –