gpt4 book ai didi

删除本地重复值

转载 作者:行者123 更新时间:2023-12-01 07:13:44 25 4
gpt4 key购买 nike

如果你有一个像这样的数据框:

v <- c(1, 1, 5, 5, 2, 2, 6, 6, 1, 2, 2, 2, 2, 2, 2, 3)
w <- data.frame(v)

如何删除 w 中的重复值并用 NA 替换它们,只针对在一个值之后立即重复的值,这样你的新数据框看起来像这样?
v <- c(1, NA, 5, NA, 2, NA, 6, NA, 1, 2, NA, NA, NA, NA, NA, 3)
w <- data.frame(v)

请注意 2连续出现两次并在每次出现时保留并且立即重复的值都被删除?

我已经搜索过 SO 并且我看到使用唯一和重复函数删除每个重复值的响应,但这不是我要搜索的内容。我希望 R 中有一个包可以在不使用函数的情况下做到这一点。

最佳答案

关键是使用 diff() 检查差异并填写 NA每当差异为零时:

> result <- v
> result[c(FALSE,diff(v)==0)] <- NA
> result
[1] 1 NA 5 NA 2 NA 6 NA 1 2 NA NA NA NA NA 3
>

关于删除本地重复值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23828369/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com