tabla: R6 Class encapsula los datos y métodos para una tabla mutable

Description Public fields Methods Examples

Description

Un objeto creado con esta clase podrá ser mutado de manera sencilla agregando modificaciones y aplicandolas. Modificaciones especificas se pueden agregar, modificar o eliminar con los métodos encapsulados aqui. Las modificaciones se pasan con una función de un solo argumento que modifique los datos. Cada modificación lleva una prioridad, entre más alta esta prioridad, se aplicará antes.

Public fields

mod_list

Lista de modificaciones para hacer a la tabla

base

Los datos base (originales) del objeto.

tabla

La tabla en estado mutable.

colnames

Las columnas de los datos base

colnames_num

Las columnas de tipo númerico de los datos base

Methods

Public methods


Method new()

Crea una tabla mutable

Usage
tabla$new(.data)
Arguments
.data

Tibble, Data.table, Tbl SQL, etc...


Method reset()

Devuelve la tabla a su estado original

Usage
tabla$reset()

Method mod_reset()

Elimina todas las modificaciones a la tabla

Usage
tabla$mod_reset()

Method mod_add()

Agrega una modificación para hacerse a la tabla

Usage
tabla$mod_add(id, priority, .f)
Arguments
id

Un ID único para la modificación

priority

Nivel de prioridad de la modificación (define el orden)

.f

función con un solo argumento para aplicar a la tabla


Method mod_rm()

Remueve alguna modificación de la lista

Usage
tabla$mod_rm(id)
Arguments
id

El ID único de la modificación


Method mod_aplicar()

Aplica todas las modificaciones en la lista en orden según la prioridad.

Usage
tabla$mod_aplicar()

Method query()

Extrae el SQL query o un hash que identifique el estado actual de la tabla.

Usage
tabla$query()

Method clone()

The objects of this class are cloneable with this method.

Usage
tabla$clone(deep = FALSE)
Arguments
deep

Whether to make a deep clone.

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
example_data <- data.frame(n = 1:100)
number_table <- tabla$new(example_data)
number_table$mod_add(
  id = "x2",
  priority = 1,
  .f = function(.data) {
    .data$n <- .data$n * 2
    return(.data)
  }
)
number_table$mod_aplicar()
print(number_table$table)
number_table$reset()

proyais/proyaisComponents documentation built on Dec. 22, 2021, 9:54 a.m.