【发布时间】:2020-09-18 16:54:23
【问题描述】:
我有这个并且它有效:
data %>%
select_if(function(x) any(is.na(x))) %>%
summarise_each(funs(sum(is.na(.))))
警告信息:
summarise_each()自 dplyr 0.7.0 起已弃用。 请改用across()。
当我更改 sumarise_each() 时:
data %>%
select_if(function(x) any(is.na(x))) %>%
summarise(across(funs(sum(is.na(.)))))
发生这种情况:
错误:
summarise()输入有问题..1。
x 必须使用有效的下标向量对列进行子集化。
x 下标类型错误fun_list。
ℹ 必须是数字或字符。
ℹ 输入..1是across(funs(sum(is.na(.))))。
我想用 cross 函数更新我的代码。
【问题讨论】:
-
如果您提供一个可重现的示例来说明您正在使用的数据以及您希望预期输出的样子,您可能会得到更好的响应。您首先要查看的是
summarise(across())所期望的参数顺序。across的第一个参数应该是您希望应用函数的列。如果没有看到您的数据或不了解您正在尝试做什么,将很难提供除此之外的建议。您正在尝试选择所有至少有 1 个 NA 的列?