Foro de debate

Tablas de frecuencia con totales

Tablas de frecuencia con totales

by Franz Jimeno -
Number of replies: 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
In reply to Franz Jimeno

Re: Tablas de frecuencia con totales

by 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
In reply to Antonio Jesús Arriaza Gómez

Re: Tablas de frecuencia con totales

by 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