magrittr 别名的正式参数名称

Formal argument names for magrittr aliases

我想知道是否有人知道或可以帮助我找到所有 magrittr 别名函数的正式参数名称。例如,我知道 'set_colnames' 的参数是 'value'。

df <- data.frame(1:3, 4:6, 7:9) %>%
  set_colnames(value = c('a', 'b', 'c')

通常,我只是传递未命名的参数,但最近我一直在努力使我的代码尽可能健壮,当你试图在应用函数(或 llply在我的情况下)。我遇到的问题是我有一个类似 df 的列表,我想从每个列表中提取相同的列,但仍保留列表格式。

df_list <- list(data.frame('a' = 1:3, 'b' = 4:6), 
                data.frame('a' = 7:9, 'b' = 10:12))

我想做的是

df_b <- df_list %>%
  llply(.fun = use_series, b)

但这不起作用,因为我不知道传递给 'use_series' 的正式名称。

use_series 只是 $ 的别名。您可以通过键入不带括号

的函数名称来查看
use_series
# .Primitive("$")

$ 原始函数不像用户定义的函数那样具有正式的参数名称。在这种情况下使用 extract2 会更容易

df_b <- df_list %>%
  llply(.fun = extract2, "b")

请注意,在这种情况下,您将列名称作为字符值而不是符号传递。我 $ 使用 apply 函数族很棘手。