R分组并保留各个小组的最大值

1.原始文件这个样子:

        Data  Stock Close
1 2017-10-03 Google   786
2 2017-10-03 Amazon   754
3 2017-10-03  Apple   116
4 2017-10-04 Google   787
5 2017-10-04 Amazon   757
6 2017-10-04  Apple   116

2.目的文件这个样子:

# A tibble: 4 × 3
# Groups:   Stock [3]
  Data       Stock  Close
  <chr>      <chr>  <int>
1 2017-10-04 Amazon   757
2 2017-10-03 Apple    116
3 2017-10-04 Apple    116
4 2017-10-04 Google   787

所用代码:

df <- read.table("stocks.txt",header = TRUE)
df%>%group_by(Stock)%>% slice_max(Close,n=1)

解读:
这里是对Stock先分组,然后保留每个组的最大值或者最小值,另外,使用linux中的uniq -f 也可以达到同样的效果

你可能感兴趣的:(r语言)