Foro de debate

Tablas de frecuencia con totales

Tablas de frecuencia con totales

de Franz Jimeno -
Número de respuestas: 2
Hola,

estoy intentando crear una tabla de frecuencias y me gustaría que añadiera los totales (horizontales y verticales). Recuerdo haberlo leido alguna vez en algún sitio, pero no he sabido recordar donde. Os pongo un ejemplo:


H1
H2
Total
V1
2
4
6
V2
3
5
8
Total
5
9
14


Muchas gracias,


Franz
En respuesta a Franz Jimeno

Re: Tablas de frecuencia con totales

de Antonio Jesús Arriaza Gómez -
Desde Rcmdr se puede introducir una tabla de doble entrada y marcar la opción "porcentajes totales" que hace lo que pides. La ruta es:

Estadísticos->Tablas de contingencias->Introducir y analizar una tabla de doble entrada...

Las órdenes correspondientes en R son:

> Tabla <- matrix(c(3,2,1,1), 2, 2, byrow=TRUE)
> rownames(Tabla) <- c('juan', 'luis')
> colnames(Tabla) <- c('casa', 'piso')
> totPercents(Tabla)

El problema es que la orden totPercent() está en el paquete Rcmdr y para utilizarla tienes que cargar el paquete por lo que estamos en las mismas.

De todas formas sería sencillo implementar esta órden para utilizarla fuera de Rcmdr si la necesitas postea.

Un saludo
En respuesta a Antonio Jesús Arriaza Gómez

Re: Tablas de frecuencia con totales

de Franz Jimeno -
Gracias por responder tan rápido.

Con esto ya tengo suficiente. He mirado la función totPercents y esta ya me lo aclara.

> totPercents
function (tab, digits = 1)
{
dim <- length(dim(tab))
if (is.null(dimnames(tab))) {
dims <- dim(tab)
dimnames(tab) <- lapply(1:dim, function(i) 1:dims[i])
}
tab <- 100 * tab/sum(tab)
tab <- cbind(tab, rowSums(tab))
tab <- rbind(tab, colSums(tab))
rownames(tab)[nrow(tab)] <- "Total"
colnames(tab)[ncol(tab)] <- "Total"
round(tab, digits = digits)
}
<environment: namespace:Rcmdr>

Un saludo,


Franz