我使用的数据集中缺少值,因此我必须使用Amelia包进行插补,结果数据集的格式如下:
Bi.Rads Age Shape Margin Density Severity
5.000000 70.00000 3.4685058 5.00000000 3.000000 1
5.000000 70.00000 4.0000000 3.00000000 3.000000 1
5.000000 70.00000 4.0000000 4.00000000 3.000000 1
5.000000 70.00000 4.0000000 5.00000000 3.000000 1
5.000000 70.00000 4.2881664 4.00000000 3.689292 1
5.000000 70.27765 4.0000000 4.00000000 3.000000 1
十进制值是推算值。现在将这个数据集视为数据帧df,我从df中随机抽样100行,无需替换
df1<-df[sample(nrow(df),100),]
现在,我想从df中删除df1,我已尝试过类似帖子的每个建议,例如使用%in%,使用的dplyr包不返回861行。我试图评论其他帖子,但我不能,因为我没有足够的声誉。你能帮帮我吗?到目前为止,使用包sqldf,compare的技术都没有。
答案 0 :(得分:0)
试试这个:
indices <- sample(1:nrow(df), 100)
df <- df[-indices,]
答案 1 :(得分:-1)
接下来,在对单个数据框进行子集化时,以下内容类似于!%in%
,但此处用于保留或删除行。
library(dplyr)
Desired_data<-anti_join(df, df1)
来源: