2  Tablas2R

2.1 Fórmula para traspasar tablas a R desde tabulación clásica

Supongamos la sigueente tabla obtenida desde Barbwin y tabulación clásica obtenida como:

TABLA CRUZADA DE P9 (COLUMNAS) BY P4, P5 Y P6A (FILAS)

A tener en cuenta …

  1. regla importante TEXTO EXTRA | NOMBRE DE VARIABLE | ETIQUETA (en row_labels)
  2. regla importante si ninguna variable de filas tienen extra extra, se puede anular para todas y lo mismo para el nombre de variable (puede suceder); se quitaría el espacio y el | con el que finaliza.
  3. regla importante, vacío es vacío; 0 es 0.

Esta sería, por ejemplo, una posible representación de la tabla exprtada a CSV

row_labels,#Total,Texto extra si lo hay|P9|-50 km,Texto extra si lo hay|P9|50-100 km,Texto extra si lo hay|P9|101-200 km,Texto extra si lo hay|P9|201-300,Texto extra si lo hay|P9|301-400 km,Texto extra si lo hay|P9|+401 km

Dónde pernocta|P4|#Total cases,,384,124,152,44,32,20,12

Dónde pernocta|P4|hotel,,60,8,12,12,8,8,12

Dónde pernocta|P4|tienda,,64,28,20,12,4,0,0

Dónde pernocta|P4|caravana,,32,0,0,8,16,8,0

Dónde pernocta|P4|amigos,,76,20,24,12,4,4,12

Dónde pernocta|P4|familiares,,60,12,32,0,8,8,0

Dónde pernocta|P4|otros,,32,4,16,8,0,4,0

Dónde pernocta|P4|Ns/Nc,,0,0,0,0,0,0,0

Qué actividades realiza|P5|#Total cases,,384,124,152,44,32,20,12

Qué actividades realiza|P5|visitas,,152,40,68,16,8,8,12

Qué actividades realiza|P5|deporte,,188,60,80,20,12,8,8

Qué actividades realiza|P5|excursiones,,136,64,44,12,12,4,0

Qué actividades realiza|P5|visitar lugares,,81,9,12,20,12,20,8

Qué actividades realiza|P5|otros,,100,36,56,8,0,0,0

Qué actividades realiza|P5|Ns/Nc,,0,0,0,0,0,0,0

Primer lugar elegido|P6A|#Total cases,,384,124,152,44,32,20,12

Primer lugar elegido|P6A|montaña,,160,64,64,16,12,0,4

Primer lugar elegido|P6A|costa/playa,,96,16,40,12,12,12,4

Primer lugar elegido|P6A|ciudad,,72,24,20,8,8,8,4

Primer lugar elegido|P6A|campo,,56,20,28,8,0,0,0

Primer lugar elegido|P6A|Ns/Nc,,0,0,0,0,0,0,0

Y esto habría que pasárselo a la parte del editor así …

# CODIGO DE TRASPASO
# ----------------------------------------------------------
pacman::p_load(expss)
df <- data.frame(
    "row_labels"=c("Dónde pernocta|P4|#Total cases","Dónde pernocta|P4|hotel","Dónde pernocta|P4|tienda","Dónde pernocta|P4|caravana","Dónde pernocta|P4|amigos","Dónde pernocta|P4|familiares","Dónde pernocta|P4|otros","Dónde pernocta|P4|Ns/Nc","Qué actividades realiza|P5|#Total cases","Qué actividades realiza|P5|visitas","Qué actividades realiza|P5|deporte","Qué actividades realiza|P5|excursiones","Qué actividades realiza|P5|visitar lugares","Qué actividades realiza|P5|otros","Qué actividades realiza|P5|Ns/Nc","Primer lugar elegido|P6A|#Total cases","Primer lugar elegido|P6A|montaña","Primer lugar elegido|P6A|costa/playa","Primer lugar elegido|P6A|ciudad","Primer lugar elegido|P6A|campo","Primer lugar elegido|P6A|Ns/Nc"),
    "#Total"=c(384,60,64,32,76,60,32,0,384,152,188,136,81,100,0,384,160,96,72,56,0),
    "Texto extra si lo hay|P9|-50 km"=c(124,8,28,0,20,12,4,0,124,40,60,64,9,36,0,124,64,16,24,20,0),
    "Texto extra si lo hay|P9|50-100 km"=c(152,12,20,0,24,32,16,0,152,68,80,44,12,56,0,152,64,40,20,28,0),
    "Texto extra si lo hay|P9|101-200 km"=c(44,12,12,8,12,0,8,0,44,16,20,12,20,8,0,44,16,12,8,8,0),
    "Texto extra si lo hay|P9|201-300"=c(32,8,4,16,4,8,0,0,32,8,12,12,12,0,0,32,12,12,8,0,0),
    "Texto extra si lo hay|P9|301-400 km"=c(20,8,0,8,4,8,4,0,20,8,8,4,20,0,0,20,0,12,8,0,0),
    "Texto extra si lo hay|P9|+401 km"=c(12,12,0,0,12,0,0,0,12,12,8,0,8,0,0,12,4,4,4,0,0)
    ,check.names=F
)
print("<br><br>")
  [1] "<br><br>"
print("Publicando una tabla como ésta: <br><br>")
  [1] "Publicando una tabla como ésta: <br><br>"
as.datatable_widget(as.etable(df))
pacman::p_load(dplyr,expss)
df <- read_spss('~/R/r-projects/19.r-brb/data/ejemplogbw8.sav')
Error in foreign::read.spss(enc2native(file), use.value.labels = FALSE, : unable to open file: 'No such file or directory'
View(df %>% 
    tab_cols(total(), P1) %>% 
    tab_cells(EDAD) %>% 
    tab_stat_cases(label='Frecuencias') %>% 
    tab_stat_cpct(label='% Verticales') %>% 
    tab_stat_rpct(label='% Horizontales') %>% 
    tab_stat_tpct(label='% Totales') %>% 
    tab_pivot(stat_position='inside_rows'))
Error in eval(expr, envir = e, enclos = baseenv()): objeto 'P1' no encontrado