autodb | R Documentation |
This is a wrapper function for applying normalise
,
autoref
, and decompose
. This takes a data frame
and converts it straight into a database, which is the main intended use case
for the package.
autodb(
df,
digits = getOption("digits"),
single_ref = FALSE,
ensure_lossless = TRUE,
remove_avoidable = FALSE,
constants_name = "constants",
progress = FALSE,
progress_file = "",
...
)
df |
a data.frame, containing the data to be normalised. |
digits |
a positive integer, indicating how many significant digits are
to be used for numeric and complex variables. This is used for both
pre-formatting in |
single_ref |
a logical, FALSE by default. If TRUE, then only one reference between each relation pair is kept when generating foreign key references. If a pair has multiple references, the kept reference refers to the earliest key for the child relation, as sorted by priority order. |
ensure_lossless |
a logical, indicating whether to check whether the
normalisation is lossless. If it is not, then an additional relation is
added to the final "database", containing a key for |
remove_avoidable |
a logical, indicating whether to remove avoidable attributes in relations. If so, then an attribute are removed from relations if the keys can be changed such that it is not needed to preserve the given functional dependencies. |
constants_name |
a scalar character, giving the name for any relation created to store constant attributes. If this is the same as a generated relation name, it will be changed, with a warning, to ensure that all relations have a unique name. |
progress |
a logical, for whether to display progress to the user during
dependency search in |
progress_file |
a scalar character or a connection. If |
... |
further arguments passed on to |
Since decompose
only works with functional dependencies, not approximate
dependencies, the accuracy in discover
is fixed as 1.
A database
, containing the data in df
within the
inferred database schema.
# simple example
autodb(ChickWeight)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.