2015-10-25 113 views
0

我想总结一个变量的值与group_by使用dplyr包分裂数据后,下面的代码工作正常,输出在下面列出,但我不能用summarise_each替换summarise_eachsummriase即使只有一列需要计算,我不知道为什么?总结与summarise_each功能在dplyr包

iris %>% group_by(Species) %>% select(one_of('Sepal.Length')) %>% 
         summarise_each(funs(mean(.))) 

或者我会得到像“S3:lazy”这样的输出。

+0

您的预期产出是多少?使用你的代码,我将'Species.Length'作为第二列名称。这是否改变列名? – akrun

+0

与我的代码,我可以根据因子Species得到Sepal.Length的平均值。 – johnsonzhj

+0

是的,你可以得到那个,但我不明白这个问题是什么。 – akrun

回答

1

summarizesummarize_each的工作方式完全不同。 summarize其实简单 - 只需指定直接表达:

iris %>% 
    group_by(Species) %>% 
    select(Sepal.Length) %>% 
    summarize(Sepal.Length = mean(Sepal.Length)) 

您可以为输出列选择任何名称,它并不需要是相同的输入。

+0

注意到,动词汇总没有'funs'。 – johnsonzhj