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

当指定列全为NA时替换DataFrame中check列的值为NA

解决方案

可以使用dplyr包中的mutate()和if_all()函数实现需求,具体代码如下:

library(dplyr)

df <- df %>%
  mutate(check = if_else(
    # 检查empl到hum_aid的所有列是否全为NA
    if_all(empl:hum_aid, is.na),
    # 满足条件时替换为NA(用NA_integer_匹配原check列的整数类型)
    NA_integer_,
    # 不满足条件则保留原check值
    check
  ))

代码说明

  • if_all(empl:hum_aid, is.na):逐行校验empl至hum_aid范围内的所有列是否均为NA,返回对应逻辑判断结果(TRUE/FALSE)。
  • if_else():根据上述逻辑结果,对符合条件的行替换check值为NA,其余行保留原有值。

若未安装dplyr包,可先执行install.packages("dplyr")完成安装。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.27 14:18:11