首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如果B是A的子集的数据帧,如何从A数据帧中删除整个B数据帧(在R中)

在R中,可以使用以下方法从数据帧A中删除整个数据帧B,前提是B是A的子集:

  1. 使用subset()函数:
代码语言:txt
复制
A <- subset(A, !identical(A, B))

这将返回一个新的数据帧A,其中已经删除了与B相同的行。

  1. 使用anti_join()函数:
代码语言:txt
复制
library(dplyr)
A <- anti_join(A, B)

这将返回一个新的数据帧A,其中已经删除了与B相同的行。

  1. 使用merge()函数:
代码语言:txt
复制
A <- merge(A, B, all.x = TRUE)
A <- A[is.na(A$column_in_B), ]

这将返回一个新的数据帧A,其中已经删除了与B相同的行。

  1. 使用setdiff()函数:
代码语言:txt
复制
A <- A[setdiff(seq_len(nrow(A)), match(B, A)), ]

这将返回一个新的数据帧A,其中已经删除了与B相同的行。

需要注意的是,以上方法都是基于数据帧的行进行操作,而不是基于列。如果需要基于列进行操作,请使用相关的列选择方法。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

速读原著-TCP/IP(SLIP:串行线路IP)

RFC 893[Leffler and Karels 1984]描述了另一种用于以太网的封装格式,称作尾部封装(trailer encapsulation)。这是一个早期B S D系统在DEC VA X机上运行时的试验格式,它通过调整I P数据报中字段的次序来提高性能。在以太网数据帧中,开始的那部分是变长的字段(I P首部和T C P首部)。把它们移到尾部(在 C R C之前),这样当把数据复制到内核时,就可以把数据帧中的数据部分映射到一个硬件页面,节省内存到内存的复制过程。 T C P数据报的长度是5 1 2字节的整数倍,正好可以用内核中的页表来处理。两台主机通过协商使用 A R P扩展协议对数据帧进行尾部封装。这些数据帧需定义不同的以太网帧类型值。现在,尾部封装已遭到反对,因此我们不对它举任何例子。有兴趣的读者请参阅 RFC 893以及文献[ L e ffler et al. 1989]的11 . 8节。

01
领券