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

如何同时获取含NA值的数据框列名与列序号?

获取数据框中含NA值的列名与列序号

可以通过以下几种基础R方法同时获取列序号和列名:

方法一:分步获取并合并

  • 先筛选出包含NA值的列的位置序号:
    na_col_indices <- which(sapply(df, anyNA))
    
  • 提取对应的列名(names()直接作用于序号向量即可得到对应列名):
    na_col_names <- names(na_col_indices)
    
  • 将两者合并为数据框,方便查看:
    na_col_info <- data.frame(列序号 = na_col_indices, 列名 = na_col_names)
    print(na_col_info)
    

方法二:一行代码直接生成结果

如果想简化操作,可直接用一行代码生成包含列序号和列名的数据框:

data.frame(列序号 = which(sapply(df, anyNA)), 列名 = names(df)[which(sapply(df, anyNA))])

示例效果

假设你的数据框df如下:

df <- data.frame(a = c(1,2,NA), b = c(NA,3,4), c = c(5,6,7))

运行上述代码后,会得到结果:

列序号 列名
a      1    a
b      2    b

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.02 21:55:14