假設最大間隔一年我有10年的時間,並關聯到它像下面的名稱,找到R中
Name Year
A 1990
B 1991
C 1992
A 1993
A 1994
.
.
.
我想找到已經停止使用時間最長的名稱。
任何人都可以幫助我如何做到這一點?
假設最大間隔一年我有10年的時間,並關聯到它像下面的名稱,找到R中
Name Year
A 1990
B 1991
C 1992
A 1993
A 1994
.
.
.
我想找到已經停止使用時間最長的名稱。
任何人都可以幫助我如何做到這一點?
使用dplyr
:
library(dplyr)
mutate(your_data, max_year = max(Year)) %>%
group_by(Name) %>%
summarize(most_recent = max(Year),
unused_length = first(max_year) - most_recent) %>%
ungroup() %>%
arrange(most_recent)
這將通過其最近的使用順序的名字,最早的最近一次使用第一。
如果您只關心如何獲取那個最不使用的名稱,您只需要結果的第一行。添加slice(1)
到鏈像這樣:
mutate(your_data, max_year = max(Year)) %>%
group_by(Name) %>%
summarize(most_recent = max(Year),
unused_length = first(max_year) - most_recent) %>%
ungroup() %>%
arrange(most_recent) %>%
slice(1)
通過那你的意思是要發現1990年和1993年之間的「差距」的名稱爲「A」? – Larsenal
@Larsenal是的。假設我有100000個名字,我想找到那個年代最大的名字。 – haimen
你的意思是你想要結果是'B',因爲它已經有24年了? –