使用 dplyr 获取单个变量的平均值

Bri*_*ian 2 r mean dataframe dplyr

我正在使用钻石数据集,并试图找到每种切工的平均价格。我以为这会起作用

diamonds_data %>%
  filter(Cut == 'Ideal') %>%
  mean(Price)
Run Code Online (Sandbox Code Playgroud)

但我收到以下警告消息:

[1] NA
Warning message:
In mean.default(., diamonds_data, Price) :
  argument is not numeric or logical: returning NA
Run Code Online (Sandbox Code Playgroud)

Ric*_*c S 6

您不能将mean其用作数据框上的函数。如果您想获取从列开始的数值,请使用pull从数据框中提取该列。

diamonds_data %>% 
  filter(Cut == "Ideal") %>% 
  pull(Price) %>% 
  mean()
# [1] 3457.542
Run Code Online (Sandbox Code Playgroud)