2017-03-17 80 views
0

我有一個包含15k行和45列(包括整數,日期,字符串,布爾值,...)的數據框。R:具有相同索引的索引向量用於重複項

var1 var2 var3 FS 12 31.12.2016 BX 65 30.06.2016 BI 28 31.03.2016 FS 12 31.12.2016

一些這些行是相同的。我現在需要含有某種指數與像本例中的第1和第4行相同的行相同項目的附加列:

index var1 var2 var3 1 FS 12 31.12.2016 2 BX 65 30.06.2016 3 BI 28 31.03.2016 1 FS 12 31.12.2016

我可以使用哈希函數,但這樣會破壞原有的行訂購。理想情況下,這將是一個越來越多的數字,就像我的例子。
我試過與duplicated()運氣,但它似乎主要用於重複數據刪除。
此外,我可以編寫循環來比較所有行,並獲得正確的索引,但可能有一個更優雅的方法來做到這一點。

+2

'as.numeric(as.factor(申請(DF,1,粘貼,崩潰= 「 - 」)))' –

+1

,這不符合1日開始,但它絕對適合我的需要。非常感謝您的迅速幫助! – Fiete

回答

1

您可以隨時使用dplyr

library(dplyr) 
df=data.frame(var1=c("FS","BX","BI","FS"),var2=c(12,65,28,12)) 
df2 = df%>%group_by(var1,var2)%>%mutate(index=row_number())%>%ungroup()