如何找到销售额最高和第二高的客户?

How to find Customers with Highest and second Highest sales?

我需要找出购买量最高和第二高的客户姓名。

示例数据

Name   Sales
pavan  400
kumar  200
mahesh 750
rajesh 550
vasu   900

应该有两个查询,一个是最高的,一个是第二高的。 我只想要名字而不是行。

更新答案

R 基础溶液

确保名称是 Character 类型

最大

df[which.max(df$Sales),]$Name
#[1] "vasu"

最小值

df[which.min(df$Sales),]$Name
#[1] "kumar"

需要注意的是whichreturns索引。所以在上面的例子中,which.max returns 是最大销售价值的索引,反之亦然。因此,我在 R.

的子集附件中发送索引

第二高

library(dplyr)

df <- df %>% arrange(desc(Sales))
df$Name[2]
#mahesh

您可以不断更改索引以获得第 3 和第 4。

您应该首先在帖子中搜索您的问题。

其次,试试这个:

library(dplyr)
test %>% 
   summarise_at(c('Name', "Sales"), max, na.rm=TRUE) %>% 
   select(Name)

输出为:

# A tibble: 1 x 1
  Name 
  <chr>
1 vasu 

您可以将函数 max 替换为 min 以获得您想要的输出。或引用 select(Name) 以接收机器人值。