gpt4 book ai didi

从数据框中删除相似的重复项

转载 作者:行者123 更新时间:2023-12-02 05:59:51 26 4
gpt4 key购买 nike

如何删除数据框中值在特定阈值内的行?

                x             y
1 -0.111111e-15 0.111111e-15
2 -1.111112e-15 1.111112e-15
3 -1.111111e-15 1.111111e-15

例如,如果我将阈值设置为 1e^-8,第二行或第三行将被删除。

最佳答案

我使用一些实用函数 rd.txt 输入控制台输出:

> dat <- rd.txt("                x             y
+ 1 -0.111111e-15 0.111111e-15
+ 2 -1.111112e-15 1.111112e-15
+ 3 -1.111111e-15 1.111111e-15"
+ )
> dat[ ! duplicated( round(dat,-8) ),]
x y
1 -1.11111e-16 1.11111e-16

(我的第一个带有减号而不是否定运算符的版本不正确。)如果所有列都不是数字,则需要进行一些修改。如果是这种情况,那么请发布一个正确的测试示例,最好使用 dput() 输出而不是通常模棱两可的控制台输出。

以其他受访者的例子(修改为提供请求的对象类):

dfrm<-data.frame(id=letters[1:3],x=c(-1/9/1e15,-1/9/1e14,-1/9/1e14),
y=c(1/9/1e15,1/9/1e14,1/9/1e14))
dfrm[ ! duplicated( round( dfrm[ , sapply(dfrm, is.numeric)],8)), ]
id x y
1 a -1.111111e-16 1.111111e-16

关于从数据框中删除相似的重复项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30015304/

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