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

R语言如何删除数据集指定列含N/A字符串的对应行

解决方案

方案1:读入CSV时直接预处理(推荐)

读入数据时通过na.strings参数将csv自带的"N/A"字符串识别为R标准空值NA,后续处理更方便:

# 读入数据时指定要识别为空值的字符串
df <- read.csv("Video_Games_Sales_as_at_22_Dec_2016.csv", 
               na.strings = c("", "NA", "N/A"))

# 过滤掉Year_of_Release列为空的行
# 基础R写法
df_clean <- df[!is.na(df$Year_of_Release), ]

# 若使用dplyr可写为
library(dplyr)
df_clean <- df %>% filter(!is.na(Year_of_Release))

方案2:已读入数据的情况下直接过滤

如果已经完成数据读入不想重新加载,直接匹配"N/A"字符串过滤即可:

# 基础R写法
df_clean <- df[df$Year_of_Release != "N/A", ]

# dplyr写法
library(dplyr)
df_clean <- df %>% filter(Year_of_Release != "N/A")

操作逻辑说明:
你之前使用na.omit()无效的核心原因是原始CSV中的"N/A"是普通字符串,不属于R默认识别的NA空值类型,两种方案分别从读入阶段和已读入场景出发,精准匹配你遇到的问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.24 04:36:03