如何从 csv 文件中删除重复数据?
Posted
技术标签:
【中文标题】如何从 csv 文件中删除重复数据?【英文标题】:How to remove the duplicate data from csv file? 【发布时间】:2017-05-08 05:32:09 【问题描述】:我有 2016 年棒球成绩的数据。
现在,我想删除得分相同的列。
也就是说,我想删除 $team1_score 和 $team2_score 中具有相同值的列。
如何使用 r 中的函数?
我只是尝试使用下面的代码,但效果不佳。
Baseball2 <- Baseball[!duplicated(Baseball$team1_score)]
请帮帮我...!!
【问题讨论】:
出了什么问题... 为什么今天每个人都在发布数据图像?拜托,Hailey,发布数据,而不是它的图像。请阅读(或重读)关于 reproducible questions 的内容,尤其是它提供了在您的问题中包含可用数据选项的区域。 ... 在这个问题中,您需要确定预期的输出应该是什么。删除一整列对我来说没有意义。而且由于这些数据都没有显示团队/分数的重复,因此似乎不足以证明您的观点。 我不确定问题是否与处理重复数据有关。建议去掉duplicates
标签,修改题名。
我从来没有上传过任何实际的文件,所以我刚刚捕获并上传了图像。有很多像上图这样的数据,并且有一些分数与上面的数据并列。我只是想删除有 tie score 的列。
【参考方案1】:
这里有一个简单的方法来删除带有 tie-score 的行:
(dat <- data.frame(Team1_Score= c(1,2,3), Team2_Score=c(2,3,3)))
Team1_Score Team2_Score
1 1 2
2 2 3
3 3 3
使用逻辑测试找出哪一行得分相同:
tie <- dat$Team1_Score == dat$Team2_Score
tie
[1] FALSE FALSE TRUE
使用此结果选择不平局的行:
dat[!tie, ]
Team1_Score Team2_Score
1 1 2
2 2 3
【讨论】:
【参考方案2】:我了解您不想删除重复项,但需要对数据帧进行子集化以丢弃绑定匹配项。
使用 data.table 的一个非常简单的选项:
library(data.table)
Baseball2 <- data.table(Baseball)
Baseball2 <- Baseball2[Team1_Score != Team2_Score,]
【讨论】:
以上是关于如何从 csv 文件中删除重复数据?的主要内容,如果未能解决你的问题,请参考以下文章
从 HDFS 中的数据文件夹在配置单元中创建表 - 删除重复的行