You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何避免在tidyr::complete()中逐个输入变量名?

解决方案

要实现无需逐个输入变量名调用tidyr::complete(),可以借助tidyselect包的everything()函数,它会自动选中数据框内的所有变量,完美适配你的需求。

示例代码

library(tidyverse)
raw_df <- data.frame(cat=c('A','B','C'),sub_category=c('1','2','3'))

# 自动选中所有变量的调用方式
raw_df %>% tidyr::complete(everything())

原理说明

everything()是tidyselect工具集里的选择器函数,作用是选中当前数据框中的全部列,把它传入complete()的参数位置,就等价于手动列出所有变量名,既简洁又能应对变量数量多的场景。

内容的提问来源于stack exchange,提问作者anderwyang

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.22 01:52:03