R - summaryrise_impl(.data,dots)中的错误:列`cSR`必须是长度1(摘要值),而不是2

时间:2017-12-26 08:11:34

标签: r

我正在尝试对一些数据进行分组并总结,但我收到了这个错误:

Error in summarise_impl(.data, dots) : 
  Column `cSR` must be length 1 (a summary value), not 2

我的HData示例如下:

H hW hS  hTDW  hTDS hTCW hTDS
1  3  7   6    10    3   10
2  6  10  1    3     2   6
3  2  7   1    3     1   5

我想要的输出是这样的:

H cSR   tSR  dSR
1  43%  60%  30%
2  60%  33%  33%
3  29%  33%  20%

我到目前为止尝试使用以下内容执行此操作:

pastPerfS = group_by(HData, FNAME, H)
pastPerfS = summarise(pastPerfS, cSR = round((hW/hS*100),2), tSR = round((hTDW/hTDS*100),2), dSR = round((hTCW/hTCS*100),2))

但是会导致上述错误。

1 个答案:

答案 0 :(得分:1)

如果没有简短的数据示例,很难提供完整的解决方案。下次,尝试包括表格的头部。

但是,根据您的代码,您可以尝试使用dplyr包,例如:

pastPerfS %>% group_by(HData, FNAME, H) %>%
              dplyr::summarize(cSR = round((hW/hS*100),2), 
                               tSR = round((hTDW/hTDS*100),2), 
                               dSR = round((hTCW/hTCS*100),2)) %>%
              as.data.frame()