2014-12-04 8 views
0

У меня есть кадр данных с 14 столбцами, и я хочу подмножить блок данных с одним и тем же столбцом, но повторяю только повторяющуюся строку (например, у меня есть переменная идентификатора, и если ID = 2 повторяется так, что я подмножество). Для начала, я применил таблицу к моему dataframe, чтобы увидеть частоты IDПодгонка подмножества в R

head(sort(table(call.dat$IMSI), decreasing = TRUE), 100) 

В моем случае, повторить два времени; поэтому я хочу увидеть два наблюдения для этого идентификатора. Впоследствии, я сделал x <- subset(call.dat, IMSI == "20801170106338") и hsb6 <- call.dat[call.dat$IMSI == "20801170106338", ], но результат был ложным (для x, он возвращает мне 0 наблюдений из 14 variale и для hsb6 у меня есть только NA в моей DataFrame).

Можете ли вы мне помочь, спасибо.

PS: IMSI - это числовое значение. И x <- subset(call.dat, Handset.Manufacturer == "LG") - еще один пример, который отлично работает ...

+0

Извините, команды не работают из-за моего IMSI ... (IMSI был не прав) –

ответ

0

Вы можете использовать дублируемую функцию, которая дает вам массив, который имеет значение ИСТИНА в случае дублирования записи.

isDuplicated <- duplicated(call.dat$IMSI) 

Затем вы можете извлечь все строки, содержащие дублируемое значение.

call.dat.duplicated <- all.dat[isDuplicated, ]