gpt4 book ai didi

r - 根据条件或 ID 匹配和返回值

转载 作者:行者123 更新时间:2023-12-04 16:37:06 26 4
gpt4 key购买 nike

这看起来应该相当容易,但我遇到了麻烦。

示例:我有一个包含两列 IDsperc_change 的数据框。我想知道哪些唯一 ID 的变化超过 30%。

IDs <- c(1,1,2,1,1,2,2,2,3,2,3,4,5,6,3)
perc_change <- c(50,40,60,70,80,30,20,40,23,25,10,30,12,7,70)
df <- data.frame(IDs, perc_change)

到目前为止:

if (df$perc_change > 30) {
unique(df$IDs)
} else {
}

这显然不起作用,因为它返回所有唯一的 ID。我应该找到索引然后匹配它还是什么?

提前致谢!

最佳答案

我们可以这样做,以获取每个 ID 的值:

library(dplyr)

df %>%
group_by(IDs) %>%
filter(perc_change > 30) %>%
mutate(values = paste0(perc_change, collapse = ","), .keep="unused") %>%
distinct(IDs, .keep_all = TRUE)

输出:

    IDs values     
<dbl> <chr>
1 1 50,40,70,80
2 2 60,40
3 3 70

关于r - 根据条件或 ID 匹配和返回值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68564406/

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