访问“。”中的数据组件。 (点)运算符与magrittr

时间:2017-07-19 18:46:43

标签: r magrittr

我不清楚如何使用带有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

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

This is by design

您必须使用代码块

data.frame(x = 1:10, y = 11:20) %>% {min(.$y)}