使用dplyr group_by损坏数据帧:列将被截断或用NA填充

时间:2018-12-18 16:04:42

标签: r dplyr

我试图复制这种方法以在我的数据集中找到不同组的均值:Means multiple columns by multiple groups和以下代码:

newtest %>%
  group_by(aligntool, paired) %>%
  summarise(vars("read_per_length"), mean)

但是,我收到以下错误消息:

In format.data.frame(x, digits = digits, na.encode = FALSE) :
  corrupt data frame: columns will be truncated or padded with NAs

我测试了一下这是否是零值问题,所以我删除了这些值并遇到了同样的问题。我还使数据集更小,以查看这是否是内存问题。作为参考,我的数据框如下所示:

str(newtest)
'data.frame':   100 obs. of  4 variables:
 $ Run_Sample     : Factor w/ 6 levels "Run_1768_Sample_77304",..: 5 6 3 3 4 6 2 1 6 6 ...
 $ paired         : Factor w/ 2 levels "N","Y": 2 2 1 1 1 1 1 2 2 1 ...
 $ aligntool      : Factor w/ 2 levels "bbmap","kallisto": 2 1 1 2 1 1 2 2 1 1 ...
 $ read_per_length: num  2.60e-10 1.87e-09 3.28e-09 7.63e-10 1.38e-09 ...

以某种方式格式化数据框是否存在问题?我该如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

这应该有效:

newtest %>%
  group_by(aligntool, paired) %>%
  summarise_at(vars("read_per_length"), mean)