飞道的博客

R语言数据按行去除重复

413人阅读  评论(0)

数据重复的影响

在临床上,偶尔会出现需要分析病例数据的情况。通常为了保护隐私,患者的个人识别相关的关键信息会被剔除只保留病历号,但是患者的就诊行为可能不止一次,这也就导致了我们的数据出现了重复,把这些数据直接放到一起进行分析显然是不科学的。

如何去除重复

首先观察自己的数据,如果是用行来代表观测的话,可以使用dplyr包distinct函数。如下所示:

#加载dplyr包
library(dylpr)
df <- data.frame(name=c("wang","lee","Mary","Harry","Mary"),
+                 score=c(58,59,59,80,60)
+ )     
print(df)
   name score
1  wang    58
2   lee    59
3  Mary    59
4 Harry    80
5  Mary    60
df <- df %>% distinct(name, .keep_all = T)
print(df)
   name score
1  wang    58
2   lee    59
3  Mary    59
4 Harry    80

去除name重复了的这一行,但是我们可以看到的是虽然name那一列出现了重复,但是其实它的score是不同的,其实代表了不同的观测,distinct函数依然不会让你失望。如下所示

df <- data.frame(name=c("wang","lee","Mary","Harry","Mary"),
+                  score=c(58,59,59,80,60)
+ )     
print(df)
   name score
1  wang    58
2   lee    59
3  Mary    59
4 Harry    80
5  Mary    60
df <- df %>% distinct(name,score, .keep_all = T)
print(df)
   name score
1  wang    58
2   lee    59
3  Mary    59
4 Harry    80
5  Mary    60

表明distinct()函数能够实现根据多个变量进行剔除重复的过程。

未完待续!


转载:https://blog.csdn.net/qq_36481674/article/details/111577038
查看评论
* 以上用户言论只代表其个人观点,不代表本网站的观点或立场