【问题标题】:Deleting values based on a vector indexes根据向量索引删除值
【发布时间】:2017-05-22 09:49:47
【问题描述】:

我的数据集有重复。我正在从原始向量中删除结果向量(使用这些语句)。

  elements_LON <- longitude %in% Point_Long
  new_LOG <- longitude[! elements_LON]

  **# longitude: Its the original vector 
  **# Point_Long: Resultant vector (Subset of longitude vector)**** 

它使两个向量不相等,因为它也删除了重复的值。我需要根据索引而不是值执行删除。任何人都可以建议一种方法吗?谢谢

【问题讨论】:

  • 请举一个可重现的例子! minimal reproducible example你想要的输出是什么?
  • 您只想删除Point_Long的重复值一次?
  • 是的,完全正确。只有一次。
  • 查看duplicated函数。重复的元素将被标记为TRUE。然后你可以用它来删除那些元素。

标签: r vector indexing


【解决方案1】:

给定两个向量 a 和 b

(a <- seq(1:10)) #initial values
[1]  1  2  3  4  5  6  7  8  9 10
b <- c(3,5,7) #values to exclude
(c <- ifelse(!(a %in% b),a,NA)) # initial vector minus the values of b (but of the same length as a)
[1]  1  2 NA  4 NA  6 NA  8  9 10

您现在可以绘制相同长度的向量

【讨论】:

  • 非常感谢。
猜你喜欢
  • 2012-01-15
  • 1970-01-01
  • 2021-10-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-09-17
  • 2019-09-15
  • 2015-07-19
相关资源
最近更新 更多