我不清楚如何使用带有magrittr的点(“。”)将函数应用于数据组件,例如列表中的数据列或列表中的项目。
示例:
> data.frame(x = 1:10, y = 11:20) %>% .$y
[1] 11 12 13 14 15 16 17 18 19 20
访问数据似乎应该与向其应用函数相同,但它不会:
> data.frame(x = 1:10, y = 11:20) %>% min(.$y)
[1] 1
答案 0 :(得分:3)
data.frame将作为第一个参数传递,除非在调用中的其他位置放置一个单独的点。
data.frame(x = 1:10, y = 11:20) %>% min(.$y)
与
相同dd <- data.frame(x = 1:10, y = 11:20)
min(dd, dd$y)
# [1] 1
您必须使用代码块
data.frame(x = 1:10, y = 11:20) %>% {min(.$y)}