zoukankan      html  css  js  c++  java
  • R Group By取第一条记录

    id = c(1,2,1,4,2)
    year = c(1980, 1990, 2000, 2010, 2020)
    salary = c(2000, 3000, 4000, 5000, 6000)
    df = data.frame(id, year, salary);
    df
    # id year salary
    # 1  1 1980   2000
    # 2  2 1990   3000
    # 3  1 2000   4000
    # 4  4 2010   5000
    # 5  2 2020   6000
    
    df %>%  group_by(id) %>%
      arrange(id, desc(year)) %>%
      filter(row_number() == 1) %>%
      ungroup()
    
    # id  year salary
    # <dbl> <dbl>  <dbl>
    #   1  2000   4000
    #   2  2020   6000
    #   4  2010   5000
    df %>%  group_by(id) %>%  #按id分组
      arrange(id, desc(year)) %>% #按id升序,year降序
      filter(row_number() == 1) %>% #取分组后的第一条记录,即日期最近的一条记录
      ungroup() #取消分组

    如果没有一直坚持,也不会有质的飞跃,当生命有了限度,每个人的价值就会浮现。

    船长博客,期待共同交流提高!

    本文如对您有帮助,记得点击右下边小球【赞一下】,热烈期待您关注博客 n(*≧▽≦*)n

    0成本创业_月入5000被动收入

  • 相关阅读:
    多线程的设计模式
    Deque 双端队列
    并发Queue
    并发类容器
    同步类容器
    java0926
    第十二次作业
    第十一次作业
    第十次
    第九次
  • 原文地址:https://www.cnblogs.com/v5captain/p/14327731.html
Copyright © 2011-2022 走看看