R语言中针对表格里删除相同值的不同情况汇总以及代码解析

#创作灵感:r语言跑代码的时候需要删除AB两列同一行的数据相同值,但是网上给的代码都是一些duplicated()、distinct()、以及unique(),找了好久都没有找到我想要的,就自己写了点简单的代码跑成功了,我准备把遇到表格里删除相同值的情况进行汇总分享给大家!#

 一共分为以下几种情况:(PS:背景是有AB两列)

  • 目录

  • 以列为角度的相同:

  • 列列之间数值相同,去除

  • 单列之间数值相同,去除

  • 以行为角度的相同:

  • 行行之间数值相同,去除

  1. 第一种情况:以列为角度的相同----列列之间数值相同,去除

setwd("D:\\get")#设置工作目录
rm(list = ls()) #清空空间
install.packages("openxlsx")#因为我是提取xlsx表格,所以需要安装这个包
library(openxlsx)
D <- read.xlsx("EXPLORE.xlsx",2)#这里的2是指我这个文件里的sheet2嘿嘿~
D <- D[D$A != D$B,]#这里$是指从D中提取某一列
#这样就欧卡啦~

 结果展示:

第二种情况:以列为角度的相同----单列之间数值相同,去除

 A方法:用unique()函数

解释一下unique()函数,如果你指定某一列进行重复值删除,那么结果输出也只是针对此列。

和duplicated()函数和distinct()函数不同,下面会有展示和解释哦~

unique(D$A)

结果展示:

B方法:用 duplicated()函数

解释一下duplicated()函数,如果你指定某一列进行重复列删除,那么结果输出的这一整行的删除。

D[!duplicated(D$A),]#此处!是指删除重复值的意思

结果展示:

 

C方法: 用distinct()函数

 解释一下distinct()函数,如果你指定某一列进行重复列删除,那么结果输出的这一整行的删除。

library(dplyr)#distinct函数是属于dplyr包哦~
distinct(D,A,.keep_all= TRUE)#它的语法格式就是distinct(此文件,选中的哪一列(可以同时多选,只要多加一个,即可),.keep_all= TRUE)

 结果展示:

 第三种情况:以行为角度的相同----行行之间数值相同,去除

 A方法:用unique()函数

unique(D)

 结果展示:(原本第一行和第七行都是2,2,现在第七行去掉啦~)

B方法:用 duplicated()函数

结果和运行同A方法哦,这里就不展示啦~

C方法: 用distinct()函数

library(dplyr)
distinct(D,A,B,.keep_all= TRUE)#这里需要两列都选上哈~

结果展示:

结束!虽然内容很少,但搞起来确实累不乎的,第一次弄这个,开心开心开心,希望能帮助大家‘啦~

  • 8
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
你可以使用 VennDiagram 包来制作 5 元 Venn 图。在这个过程,你需要使用一些工具来处理不同长度的表格,比如 `merge()` 函数。 下面是一个简单的例子,展示了如何使用 R 代码制作 5 元 Venn 图: ```r # 安装VennDiagram包 install.packages("VennDiagram") # 加载VennDiagram包 library(VennDiagram) # 创建表格 a <- c(1:10) b <- c(5:15) c <- c(8:20) d <- c(15:25) e <- c(20:30) # 合并表格 ab <- merge(a, b, all = TRUE) abc <- merge(ab, c, all = TRUE) abcd <- merge(abc, d, all = TRUE) abcde <- merge(abcd, e, all = TRUE) # 创建Venn图 venn.plot <- venn.diagram( x = list( "A" = a, "B" = b, "C" = c, "D" = d, "E" = e ), filename = NULL, category.names = c("A", "B", "C", "D", "E"), fill = c("red", "blue", "green", "orange", "purple"), alpha = c(0.5, 0.5, 0.5, 0.5, 0.5), label.col = c("white", "white", "white", "white", "white"), cex = 1.5, fontface = "bold", cat.cex = 1.5, cat.fontface = "bold", margin = 0.1, main = "5元Venn图" ) # 将Venn图输出到PNG文件 png("venn.png", width = 800, height = 800) grid.draw(venn.plot) dev.off() ``` 在这个例子,我们首先创建了 5 个不同长度的向量 a、b、c、d 和 e,并使用 `merge()` 函数将它们合并到一个表格。接下来,我们使用 `venn.diagram()` 函数创建了一个 5 元 Venn 图,并将其输出到一个 PNG 文件。 你可以将上面的代码复制到 R 编辑器尝试运行,如果你有自己的数据,只需要将其替换成 a、b、c、d 和 e 即可。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值