r - 删除所有包含 "prohibited"值的观察值的函数 - R

标签 r database function dataframe

我有一个大型数据集,如下所示:

PID 总共有 43 个不同的值。我已经确定了需要删除的 PID 并将它们总结在一个向量中:

我想从我的数据集中删除所有包含来自向量 NullNK 的 PID 之一的观察结果(行)。我试过为它写一个函数,但我得到一个错误(我以前从未写过函数):

  for (i in length(NullNK)){
    SR_DynUeber_einfam <- SR_DynUeber_einfam [-which(SR_DynUeber_einfam$PID == NullNK(i)),]
  }

我如何有效地从我的原始数据集中删除包含来自 NullNK 向量的 PID 的观测值?

我的功能有什么问题?

谢谢!

最佳答案

对于像这样的基本操作,通常不需要 for 循环。这可以满足您的需求:

SR_DynUeber_einfam[!SR_DynUeber_einfam$PID %in% NullNK,]

您的函数中的一个错误是 NullNK(i)。您应该从 R 中带有 NullNK[i] 的向量中提取子集。 希望这对您有所帮助!

关于r - 删除所有包含 "prohibited"值的观察值的函数 - R,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45117679/

相关文章:

java - 在 Java 应用程序中使用安全数据库

C 使用函数计算阶乘

c - 如何在c中正确调用另一个函数内的函数?

c++ - 如何扩展一个函数

从 R 的 C 代码创建共享对象

r - 打印数据框时不打印NA

sql - 在 SQL 中存储联系信息的最佳实践,我应该加密吗?

mysql - 如何避免MySql中插入、删除、更新异常

r - 在 R knitr 中调用后放置函数定义

r - 叮当 7 : error: linker command failed with exit code 1 for macOS Big Sur