3
我有一個數據幀組成的信息行,包括基於不同日期的名稱重複。我想將這個df過濾爲只包含唯一名稱的df,但如果有機會,也要選擇最近的發生。我是dplyr的忠實粉絲,並且之前使用過distinct和select的組合,但文檔似乎使得它不能單獨完成:R:Unique(或dplyr distinct)+最近的日期
「確定唯一性時使用的變量如果存在多行給定的輸入組合,只有第一行將被保留。「
這似乎是一個常見問題,所以我想知道是否有人有任何建議。下面是一個df示例,它反映了我的真實數據具有名稱作爲字符類,並且使用lubridate包生成了Date作爲POSIXct。
structure(list(Name = c("John", "John", "Mary", "John", "Mary",
"Chad"), Date = structure(c(1430438400, 1433116800, 1335830400,
1422748800, 1435708800, 1427846400), tzone = "UTC", class = c("POSIXct",
"POSIXt"))), .Names = c("Name", "Date"), row.names = c(NA, -6L
), class = "data.frame")
期望的結果是:
structure(list(Name = c("John", "Mary", "Chad"), Date = structure(c(1433116800,
1435708800, 1427846400), class = c("POSIXct", "POSIXt"), tzone = "UTC")), .Names = c("Name",
"Date"), row.names = c(2L, 5L, 6L), class = "data.frame")
謝謝您的幫助。
謝謝。這很好 - 我不熟悉切片,所以我現在必須這樣做! –