R:是否可以打印重复行的标题?

时间:2013-11-09 12:27:29

标签: r

我做了一个简单的

 csv <- read.csv('omg.csv', sep=' ', row.names=1)

并获取

不允许重复'row.names'

立即打印哪个行名称是重复的将会很有帮助。有没有一种简单的方法可以做到这一点,而不是对CSV文件进行排序等等?当然,R内部知道有问题的行的名字......

1 个答案:

答案 0 :(得分:2)

您可以在不要求将特定列用于行名称的情况下读取文件:

csv <- read.csv('omg.csv', sep=' ')

并在第一列中查找重复索引:

which(duplicated(csv[, 1]))

您还可以使用table来识别重复的值及其各自的频率:

tab <- table(csv[, 1])
tab[tab > 1]

你想从这里做什么真的取决于你。你可以放弃row.names = 1并对它感到满意。但是,如果您确实希望将第一列用作行名,则需要执行一些操作来解决这些重复项。您可以手动修复文件或以编程方式创建唯一的行名称,如下所示:

rownames(csv) <- make.names(csv[, 1], unique = TRUE)
csv <- csv[, -1]