我希望在某些条件下对我的连接字符串求平均值。这是我的数据:
$ cat /etc/php.ini
post_max_size = 800M
upload_max_filesize = 800M
max_execution_time = 5000
max_input_time = 5000
memory_limit = 1000M
我想取不具有特定路径的行的平均值,例如,没有c(即第1行和第3行)的行的平均值为(2 + 3) + 5)/ 3 = 3.33
和其他人类似,所以我想要的输出是
id path events
1 a, b 2, 3
2 c, a 3, 4
3 b 5
在此之前,我尝试了没有连接的数据并且它有效
path avg
a 5
b 3.5
c 3.33
但无法想出这种情况
这是我的数据
output <- sapply(as.character(unique(df$path)),
function(x) mean(subset(df, !path %in% x)$events))
答案 0 :(得分:3)
这是一个整齐的方法:
library(tidyverse)
mydata %>% separate_rows(path, events, convert = TRUE) %>% # unnest rows
group_by(path) %>% # set grouping
summarise(avg = mean(.$events[!.$id %in% id])) # summarize groups
## # A tibble: 3 × 2
## path avg
## <chr> <dbl>
## 1 a 5.000000
## 2 b 3.500000
## 3 c 3.333333
请注意,摘要使用.$[column name]
来引用整个列,只使用[column name]
来引用该组的值。