2016-02-03 3 views
1

Мне нужна помощь для создания частотной таблицы n-way.Создание n-way частотных таблиц с использованием R

Я использую код ниже:

tab <- table(VAR1,VAR2,VAR3) 
finaltab <- ftable(tab,row.vars=c(2,3)) 
print(finaltab) 

var1, var2 и var3 все переменный фактор. Делая это, я произвожу следующую таблицу:

Table 1

Но так как VAR2 и VAR3 есть несколько категорий, я получил много строк с «0», и я, который, чтобы удалить эти строки, чтобы в какой категории из vAR2 частот только для категорий var3, которые действительно имеют значение частоты, как показано ниже:

First table with the situation and second table with the desired output

ли кто-нибудь знает, как это сделать, либо Подменят таблицы я создал первый или использовать другую функцию, которая Безразлично» t возвращает все уровни VAR3 в каждой категории VAR2, но только t шланг, который на самом деле имеет частоты?

+0

Много людей на Stack Overflow метки используют для поиска вопросов, которые они имеют знания/интереса. Если вы не добавите язык, как тег, ваш вопрос не получите много просмотров. – Ivar

ответ

0

Таблицы с непредвиденными обстоятельствами имеют одинаковое количество строк в каждой категории. Если вы удалите строки из одной категории, у вас больше нет таблицы, а матрицы.

t <- structure(c(0L, 0L, 1L, 1L, 1L, 0L, 1L, 1L, 1L, 0L, 0L, 0L, 0L, 1L, 0L, 1L, 1L, 1L), .Dim = c(3L, 2L, 3L), .Dimnames = structure(list(c("A", "B", "C"), c("A", "B"), c("A", "B", "C")), .Names = c("","", "")), class = "table") 
> (ft <- ftable(t, row.vars=c(2,3))) 
    A B C 

A A 0 0 1 
    B 1 1 1 
    C 0 1 0 
B A 1 1 0 
    B 0 0 0 
    C 1 1 1 
> ft[apply(ft, 1, any), ] 
    [,1] [,2] [,3] 
[1,] 0 0 1 
[2,] 1 1 1 
[3,] 0 1 0 
[4,] 1 1 0 
[5,] 1 1 1 

Несчастливый эффект подмножества таблицы заключается в том, что имена теряются. Этот может быть в некоторой степени смягчен путем принуждения таблицы к матрице до , взяв подмножество, но напечатанный результат по-прежнему не так хорош, как у таблицы соответствия .

> as.matrix(ft)[apply(ft, 1, any), ] 

_  A B C 
    A_A 0 0 1 
    A_B 1 1 1 
    A_C 0 1 0 
    B_A 1 1 0 
    B_C 1 1 1 
Смежные вопросы