Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/72.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R 将一行的一个值与同一列所有行的平均值进行比较_R - Fatal编程技术网

R 将一行的一个值与同一列所有行的平均值进行比较

R 将一行的一个值与同一列所有行的平均值进行比较,r,R,我有一个大的数据集,我想设计个人选择一个人进行比较的能力,然后看看他们的数据与所有其他人的平均值相比如何。我正试图找到最有效的方法,希望能有一些想法 我尝试创建两个单独的数据帧,然后使用列表手动将行添加到一起,以便在ggplot中绘制它们的图形。然而,额外的操作还包括对数据进行变异 library(tidyverse) mtcars$car <- rownames(mtcars) df <- mtcars %>% filter(mtcars$car == 'Dat

我有一个大的数据集,我想设计个人选择一个人进行比较的能力,然后看看他们的数据与所有其他人的平均值相比如何。我正试图找到最有效的方法,希望能有一些想法

我尝试创建两个单独的数据帧,然后使用列表手动将行添加到一起,以便在ggplot中绘制它们的图形。然而,额外的操作还包括对数据进行变异

library(tidyverse)

mtcars$car <- rownames(mtcars)

df <- mtcars %>% 
    filter(mtcars$car == 'Datsun 710') %>% 
    group_by(car) %>% 
    summarize(disp = first(disp)) 

df2 <- mtcars %>% 
  summarize(disp = mean(disp)) 


根据我们得到的输出,可以将其更改为

library(dplyr)
mtcars %>%
      summarise(car = "All cars", disp = mean(disp)) %>% 
      bind_rows(df, .)
# A tibble: 2 x 2
#  car         disp
#   <chr>      <dbl>
#1 Datsun 710  108 
#2 All cars    231.

这太棒了!,所以我需要的是绑定行。在单独的数据帧中执行是最有效的方法吗?
library(dplyr)
mtcars %>%
      summarise(car = "All cars", disp = mean(disp)) %>% 
      bind_rows(df, .)
# A tibble: 2 x 2
#  car         disp
#   <chr>      <dbl>
#1 Datsun 710  108 
#2 All cars    231.
library(tibble)
mtcars %>%
   rownames_to_column('car') %>% 
   select(car, disp) %>% 
   add_row(car = "All cars", disp = mean(.$disp)) %>%
   filter(car %in% c('Datsun 710', 'All cars'))
#         car     disp
#1 Datsun 710 108.0000
#2   All cars 230.7219