2016-04-05 2 views
1

Мне нужно избавиться от исключенных значений, когда я подмножаю фрейм данных. То есть, если я вызываю резюме в приведенном ниже примере, z не должен отображаться как отдельное значение `name2, и есть ли возможность, чтобы идентификаторы начинались с 1 для подмножества?Подмножество и удаление исключенных отдельных значений

bspframestring<-("id,name1,name2,v1,v2,v3,v4 
1,1,z,1,1,5,1 
2,2,z,0,1,8,1 
3,2,y,0,4,0,5 
4,1,y,5,3,4,4 
5,2,y,4,9,5,5") 

bspframe<-read.table(textConnection(bspframestring), 
        header=TRUE,sep=",",row.names="id") 

bspframesub<-subset(bspframe,name2=="y",select=c("name1","name2","v2")) 

summary(bspframesub) 

#  name1  name2  v2  
# Min. :1.000 y:3 Min. :3.000 
# 1st Qu.:1.500 z:0 1st Qu.:3.500 
# Median :2.000   Median :4.000 
# Mean :1.667   Mean :5.333 
# 3rd Qu.:2.000   3rd Qu.:6.500 
# Max. :2.000   Max. :9.000 

row.names(bspframesub) 

# [1] "3" "4" "5" 
+0

На каком языке это? Может быть, пометка вашего вопроса на языке поможет вам? –

+0

Извините, первый вопрос о стеке. Язык - R. –

ответ

1

Попробуйте это:

summary(droplevels(bspframesub)) 

И сделать консолидация фактор уровня постоянной, необходимо присвоить результат:

bspframesub <- droplevels(bspframesub) 

Там также rownames<- функция, которая может быть задана 1:now(bspframesub) аргумент. Вы также можете дать ему аргумент NULL, который возвращает вам значения по умолчанию:

> row.names(bspframesub) <- NULL 
> row.names(bspframesub) 
[1] "1" "2" "3" 
Смежные вопросы