小编Jos*_*osh的帖子

tidyr传播不会汇总数据

我有以下数据:

    > data <- data.frame(unique=1:9, grouping=rep(c('a', 'b', 'c'), each=3), value=sample(1:30, 9))
    > data
      unique grouping value
    1      1        a    15
    2      2        a    21
    3      3        a    26
    4      4        b     8
    5      5        b     6
    6      6        b     4
    7      7        c    17
    8      8        c     1
    9      9        c     3
Run Code Online (Sandbox Code Playgroud)

我想创建一个如下所示的表:

       a        b    c
1      15       8    17
2      21       6    1
3      26       6    3
Run Code Online (Sandbox Code Playgroud)

我使用tidyr :: spread而没有得到正确的结果:

> data %>% spread(grouping, value)
  unique  a  b  c …
Run Code Online (Sandbox Code Playgroud)

r tidyr

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

结合小提琴情节与盒子情节

我有一个非常简单的数据集(2组,每组n = 15).使用ggplot2,我可以轻松地绘制两组的小提琴情节或箱形图.但是,我想绘制一个小提琴图,但是填充阴影对应于我的数据的3个四分位数.

有一个在SAS做一个例子在这里,但我想这样做的R.

plot r ggplot2

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

对数据框中的重复进行分组和平均

我有不同样本和技术复制的数据框(AA.1、AA.2、AA.3)。每个完整的样本集(所有样本技术重复)都有一个测量值 var3,并针对不同的 var2(X、Y 或 Z)重复。所以总的来说,我有(样本数量)(技术重复数量(var2 数量)测量值(var1 x var2 的所有可能组合重复 3 次)。

data.frame(
  var1=rep(rep(c('AA.1', 'AA.2', 'AA.3', 'BB.1', 'BB.2', 'BB.3'), each=3), 2),
  var2=rep(c('X', 'Y'), each=18),
  var3=sample(20:40, 36, replace=TRUE)
)
Run Code Online (Sandbox Code Playgroud)

对于每个 var2,我想平均每个单独样本的技术重复。我想通过创建一个新的数据框来做到这一点,该数据框将样本名称列为行名称,3 列是 3 个技术重复。然后我可以做 rowMeans() 和 sd()。这怎么可能?

r dplyr

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

标签 统计

r ×3

dplyr ×1

ggplot2 ×1

plot ×1

tidyr ×1