У меня проблема при извлечении и создании нового data.frame на основе предыдущего.Извлечение частей data.frame
Итак, мы имеем:
> head(data.raw)
date id contacted contacted_again region
1 2015-11-29 234 CHAT EMAIL APAC
2 2015-11-29 234 EMAIL EMAIL APAC
3 2015-11-27 257 PHONE PHONE EMEA
4 2015-11-27 278 PHONE EMAIL APAC
5 2015-11-27 293 CHAT EMAIL EMEA
6 2015-11-27 243 EMAIL EMAIL EMEA
market
1 AU/NZ
2 SE Asia (English)
3 Spain
4 China Mainland
5 DACH
6 DACH
Однако один я пишу
data.ru <- data.raw[data.raw$market=="Russia",]
я получаю следующий беспорядок:
date id contacted contacted_again region market
67 2015-11-25 334 CHAT EMAIL EMEA Russia
NA <NA> <NA> <NA> <NA> <NA> <NA>
NA.1 <NA> <NA> <NA> <NA> <NA> <NA>
NA.2 <NA> <NA> <NA> <NA> <NA> <NA>
NA.3 <NA> <NA> <NA> <NA> <NA> <NA>
NA.4 <NA> <NA> <NA> <NA> <NA> <NA>
Как я должен написать команду, чтобы получить только нормальный data.frame со всеми строками, которые $ market == «Россия» без каких-либо НС?
Вы, вероятно, 'NA's в ваших данных и R не знает, как обращаться с ними так, он просто оставляет их там. вы можете легко воссоздать это с помощью 'x <- c (1, 2, 1, 1, NA, NA); x [x == 1] 'например. В этом случае это можно было бы решить, используя 'x [x == 1 &! Is.na (x)]'. Кроме того, не забудьте также добавить тег языка в следующий раз. –
Номера наблюдений не имеют NA (т.е. 1,2,3 и т. Д.), Но в этом случае даже они получают НС. Кроме того, ни одно наблюдение с заявлениями [== «Россия»] не имеет в себе всех НС. –
Что делает 'sum (is.na (data.raw $ market))' дает вам? –