好吧,我挥舞着我的白旗。
我正在尝试对我的数据集计算 loess 回归。
我希望 loess 计算一组不同的点,这些点绘制为每个组的平滑线。
问题是 loess 计算是在逃避dplyr::group_by函数,所以 loess 回归是在整个数据集上计算的。
互联网搜索让我相信这是因为dplyr::group_by不应该以这种方式工作。
我只是不知道如何在每个组的基础上进行这项工作。
以下是我尝试失败的一些示例。
test2 <- test %>%
group_by(CpG) %>%
dplyr::arrange(AVGMOrder) %>%
do(broom::tidy(predict(loess(Meth ~ AVGMOrder, span = .85, data=.))))
> test2
# A tibble: 136 x 2
# Groups: CpG [4]
CpG x
<chr> <dbl>
1 cg01003813 0.781
2 cg01003813 0.793
3 cg01003813 0.805
4 cg01003813 0.816
5 cg01003813 0.829
6 cg01003813 0.841
7 cg01003813 0.854
8 cg01003813 0.866
9 cg01003813 0.878
10 cg01003813 0.893 …Run Code Online (Sandbox Code Playgroud)