Вот мои данные
> a
[1] Male Male Female Male Male Male Female Female Male Male Female Male Male Male
[15] Female Female Female Male Female Male Female Male Male Female Male Male Female Male
[29] Male Male Female Male Male Male Female Female Male Male Male Male Male
Levels: Female Male
> b
[1] 0 1 0 1 0 0 0 0 1 1 1 1 0 1 0 0 0 1 0 0 1 0 0 0 1 1 1 0 0 0 0 1 1 0 0 1 0 1 1 1 1
Levels: 0 1
> table(a,b)
b
a 0 1
0 0
Female 10 4
Male 12 15
Я не знаю, почему результат table(a,b)
имеет строку (0 0)
, мой ожидаемый результат выглядит следующим образом:
> table(a,b)
b
a 0 1
Female 10 4
Male 12 15
Не могли бы вы сказать мне, почему это происходит и как это исправить, спасибо!
> dput(a)
structure(c(3L, 3L, 2L, 3L, 3L, 3L, 2L, 2L, 3L, 3L, 2L, 3L, 3L,
3L, 2L, 2L, 2L, 3L, 2L, 3L, 2L, 3L, 3L, 2L, 3L, 3L, 2L, 3L, 3L,
3L, 2L, 3L, 3L, 3L, 2L, 2L, 3L, 3L, 3L, 3L, 3L), .Label = c("",
"Female", "Male"), class = "factor")
> dput(b)
structure(c(1L, 2L, 1L, 2L, 1L, 1L, 1L, 1L, 2L, 2L, 2L, 2L, 1L,
2L, 1L, 1L, 1L, 2L, 1L, 1L, 2L, 1L, 1L, 1L, 2L, 2L, 2L, 1L, 1L,
1L, 1L, 2L, 2L, 1L, 1L, 2L, 1L, 2L, 2L, 2L, 2L), .Label = c("0",
"1"), class = "factor")
a
иb
одинакова? - person Psidom   schedule 06.07.2016""
. Попробуйтеnlevels(a)
- person user20650   schedule 06.07.2016a
иb
одинакова - person lightsnail   schedule 06.07.2016Levels:__Female Male
, я думаю, @user20650 прав. Если бы было только два уровня, это был быLevels:_Female Male
(только один пробел, символы подчеркивания — это пробелы). - person r2evans   schedule 06.07.2016a
. Проверь это. - person Psidom   schedule 06.07.2016.Label
) в вашемdput
. Устраните проблему с вводом данных, и вы исправите таблицу. (Или просто переназначить уровни с помощью, как ни странно,levels(a) <- c("Female", "Male")
.) - person r2evans   schedule 06.07.2016a<-droplevels(a)
- person Dave2e   schedule 06.07.2016read.csv("mydata.csv", header=T)
для чтения данных. И списокa
— это всего лишь один столбец фрейма входных данных, я использовалdataframe$a
для извлечения этого столбца, и в этом столбце нет пробелов, немного странно. Как появился" "
уровень? - person lightsnail   schedule 06.07.2016table(as.character(a), b, useNA="no")
. Факторы всегда немного странные. Я всегда стараюсь использовать as=TRUE в своем семействе функцийread.
, которые преобразуют переменные в символы, а не в множители. - person lmo   schedule 06.07.2016