R - 按列值列表删除数据框中的行

问题描述 投票:0回答:1

我有两个data frames,一个包含predictors,另一个包含我想要预测的不同的categories。两个数据框都包含一个名为geoid的列。我的预测变量的一些行包含NA值,我需要删除它们。在提取包含geoid值的行的NA值,并从predictors data frame中删除它之后,我需要从categories data frame中删除相应的行。这似乎是一个相当基本的操作,但代码不起作用。

categories <- as.data.frame(read.csv("files/cat_df.csv"))
predictors <- as.data.frame(read.csv("files/radius_100.csv"))
NA_rows <- predictors[!complete.cases(predictors),]
geoids <- NA_rows['geoid']
clean_categories <- categories[!(categories$geoid %in% geoids),]

categories/clean_categories中的所有行都没有被删除。

典型的大地水准面值是US06140231typeof(categories$geoid)返回integer

r dataframe
1个回答
1
投票

我不能说这就是它,但一个非常基本的拼写错误将不会做你想要的,尝试这种纠正

clean_categories <- categories[!(categories$geoid %in% geoids),]

几乎可以肯定,这就是你想要在那条线上发生的事情。您想要否定%in%运算符的结果。你没有包含一个可重复的例子,所以我不能说整个事情是否会按你的意愿去做。

最新问题
© www.soinside.com 2019 - 2024. All rights reserved.