gpt4 book ai didi

根据其他列值删除不增加的行

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

我在 R 上有一个数据框,我想删除第 3 列中所有未增加的行。每一行都必须高于或等于前一行。但我的主要困难是行必须根据其他列 1 和 2 增加。在我的示例中,Column3 必须根据 Column1 [A-B] 和 2 [1:4] 增加。这里,Column1 [B] 必须被删除,因为 199>197.

PS : 很多地 block 和日期对应的是CO2测量值。当CO2测量时不单调时,测量是错误的。

<表类="s-表"><头>第 1 列第 2 列第 3 列<正文>A1200A2202A3204A4207B1199B2197B3200B4202

最佳答案

您可以使用 diff() 来确定一组是否在增加。

subset(df, ave(Column3, Column1, FUN = \(x) all(diff(x) >= 0)) == 1)

# Column1 Column2 Column3
# 1 A 1 200
# 2 A 2 202
# 3 A 3 204
# 4 A 4 207

它的 dplyr 等价物:

library(dplyr)

df %>%
group_by(Column1) %>%
filter(all(diff(Column3) >= 0)) %>%
ungroup()

关于根据其他列值删除不增加的行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72142313/

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