Как извлечь уникальные строки из фрейма данных с индексным столбцом? - PullRequest
0 голосов
/ 09 ноября 2018

Я импортирую из Excel в R, а не дубликаты и номер строки Excel (Index).Если я выполню unique () перед настройкой Index, положение строк во фрейме данных не будет соответствовать файлу Excel.Если я выполню unique () после Index, он также будет учитывать столбец Index и дубликатов не будет.

This:

Index   a   b   c
1       12  12  14
2       12  12  14
3       11  12  13 

to this:

Index   a   b   c
1       12  12  14
3       11  12  13 

Код:

library(openxlsx)
library(tidyverse)
dati <- data.table(read.xlsx("\\\\192.168.x.x\\file.xlsx", detectDates = TRUE))
#Index row
dati <- tibble::rowid_to_column(dati, "Index")

(Если это повторяющийся вопрос, я прошу прощения, я искал высоко и низко в течение нескольких дней и ничего не мог найти. У меня ощущение, что это очень простое решениепод другим ключевым словом)

1 Ответ

0 голосов
/ 09 ноября 2018

Вы можете использовать duplicated().

> df1[-which(duplicated(df1[,-1])), ]
  Index  a  b  c
1     1 12 12 14
3     3 11 12 13

Данные

df1 <- structure(list(Index = 1:3, a = c(12L, 12L, 11L), b = c(12L, 
                                                               12L, 12L), c = c(14L, 14L, 13L)), class = "data.frame", row.names = c(NA, 
                                                                                                                                     -3L))
...