小编NCo*_*oll的帖子

通过对变量进行分组来绘制均值比较的 pvalue 信息

我已经整理了一个图来分别查看组,但现在想要在图中包含平均成对比较的显着性水平。虽然我可以在情节之外进行比较,但我想知道在情节中包含比较的最有效方法是什么?

当前情节

library(tidyverse)

dsub <- diamonds[ sample(nrow(diamonds), 10000), ]

dsub <- dsub %>%
  filter(clarity %in% c('VS2', 'VS1', 'VVS2'))

ggplot(dsub, aes(x = cut, y = carat, fill = clarity)) +
  geom_boxplot(outlier.size = 0) +
  geom_point(pch = 21, position = position_jitterdodge()) 
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明

现在,我想补充的比较,每个等级内的的cut变量各个层次之间的的clarity变量。我更喜欢使用,ggpubr但看不到哪里可以实现。

r ggplot2 ggpubr

3
推荐指数
1
解决办法
80
查看次数

改进data.table中的滚动平均使用率

我正在尝试组合一个将复制以下内容的函数

library(tidyverse)
library(magrittr)
library(data.table)
library(parallel)
library(RcppRoll)

windows <- (1:10)*600

df2 <- setDT(df_1, key=c("Match","Name"))[
  ,by=.(Match, Name), paste0("Period_", 1:10)
  := mclapply((1:10)*600, function(x) roll_mean(Dist, x))][]
Run Code Online (Sandbox Code Playgroud)

它根据分配给windows 我的工作函数创建一个滚动平均值,然后我会感觉有一个更好的方法,因为函数版本需要花费近30倍的时间来处理数据

dt_rolling <- function(df, the.keys, x, y, z, window){
  df <- data.table(df)
  setkeyv(df, the.keys) 
  df[,by=.(x,y), paste0("Period_", window) := mclapply(window, function(a) roll_mean(z, a))][]
}


df2 <- dt_rolling(df_1, the.keys=c('Match', 'Name'), df_1$Match, df_1$Name, df_1$Dist, windows)
Run Code Online (Sandbox Code Playgroud)

有问题的数据看起来像这样

> dput(head(df_1, 5))
structure(list(Match = c("BathH", "BathH", "BathH", "BathH", 
"BathH"), Name = c("Alafoti Faosiliva", "Alafoti Faosiliva", 
"Alafoti Faosiliva", "Alafoti Faosiliva", "Alafoti Faosiliva"
), …
Run Code Online (Sandbox Code Playgroud)

r data.table

1
推荐指数
1
解决办法
348
查看次数

标签 统计

r ×2

data.table ×1

ggplot2 ×1

ggpubr ×1