一个data.frame我想,我有一个数据帧上工作,但我在努力寻找一个名字和一个名称相关联的总和相关的最新日期。我的框架看起来是这样的使用for循环变异r中
a<-
Date Name Sum
<date> <chr> <dbl>
23.02.2017 Johnny 6
24.02.2017 Jane 20
24.02.2017 Micky Mouse 20
27.02.2017 Jane 20
3.03.2017 Johnny 20
3.03.2017 Ronald 25
我想获得这样的
b<-
Latest Date Name Frequency Total Sum
<date> <chr> <dbl> <dbl>
3.03.2017 Johnny 2 26
27.02.2017 Jane 2 40
24.02.2017 Micky Mouse 1 20
3.03.2017 Ronald 1 25
我使用表函数,然后使用一个for循环开始,但我是一个有点菜鸟。
b <- data.frame(table(a$Name))
# after cleaning
b<-
Name Frequency
<chr> <int>
Johnny 2
Jane 2
Micky Mouse 1
Ronald 1
for (i in (a$Name)) {
b <- a %>%
mutate(Total Sum = sum(a$Sum[a$Name == i] %>%
mutate(Latest Date = max(a$date[a$Name == i]))
}
这将返回我看起来像这样
b<-
Name Frequency Total Sum Latest Date
<chr> <int> <dbl> <date>
Johnny 2 40 27.02.2017
Jane 2 40 27.02.2017
Micky Mouse 1 40 27.02.2017
Ronald 1 40 27.02.2017
数据帧我怎样才能确保总和仅仅是约翰尼,简的同时,该日期为与该名称关联的最新日期
'库(dplyr); df%>%group_by(Name)%>%summarize(Total_Sum = sum(Sum),Latest_Date = max(Date))'应该有效。 – Axeman
另请参阅此处(https://stackoverflow.com/questions/1660124/how-to-sum-a-variable-by-group)。 – Axeman
美丽。谢谢! –