我可以用dplyr这样的方式总结一个数据框:
mtcars %>%
group_by(cyl) %>%
summarise(mean(mpg))
Run Code Online (Sandbox Code Playgroud)
要将输出转换回类data.frame,我目前的方法是:
as.data.frame(mtcars %>%
group_by(cyl) %>%
summarise(mean(mpg)))
Run Code Online (Sandbox Code Playgroud)
有没有办法dplyr输出一个类data.frame而不必使用as.data.frame?
G. *_*eck 21
正如评论中指出的那样,您可能不需要转换它,因为它可能足以从数据框继承.如果这还不够好,那么它仍然使用,as.data.frame但稍微更优雅:
mtcars %>%
group_by(cyl) %>%
summarise(mean(mpg)) %>%
ungroup %>%
as.data.frame()
Run Code Online (Sandbox Code Playgroud)
添加我刚刚在评论中读到你想要的原因是为了避免截断打印输出.在这种情况下,只需在您的.Rprofile文件中定义此选项:
options(dplyr.print_max = Inf)
Run Code Online (Sandbox Code Playgroud)
(请注意,您仍然可以达到"max.print"与print关联的选项定义的最大值,因此如果它对您来说太低,您也需要设置该值.)
更新:已更改%.%为%>%反映dplyr中的更改.
| 归档时间: |
|
| 查看次数: |
14169 次 |
| 最近记录: |