Read a pointblank YAML file to create an agent object
Source:R/yaml_read_agent.R
yaml_read_agent.Rd
With yaml_read_agent()
we can read a pointblank YAML file that
describes a validation plan to be carried out by an agent (typically
generated by the yaml_write()
function. What's returned is a new agent
with that validation plan, ready to interrogate the target table at will
(using the table-prep formula that is set with the tbl
argument of
create_agent()
). The agent can be given more validation steps if needed
before using interrogate()
or taking part in any other agent ops (e.g.,
writing to disk with outputs intact via x_write_disk()
or again to
pointblank YAML with yaml_write()
).
To get a picture of how yaml_read_agent()
is interpreting the validation
plan specified in the pointblank YAML, we can use the
yaml_agent_show_exprs()
function. That function shows us (in the console)
the pointblank expressions for generating the described validation plan.
Examples
There's a YAML file available in the pointblank package that's also
called "agent-small_table.yml"
. The path for it can be accessed through
system.file()
:
yml_file_path <-
system.file(
"yaml", "agent-small_table.yml",
package = "pointblank"
)
The YAML file can be read as an agent with a pre-existing validation plan by
using the yaml_read_agent()
function.
agent <- yaml_read_agent(filename = yml_file_path)
agent
This particular agent is using ~ tbl_source("small_table", "tbl_store.yml")
to source the table-prep from a YAML file that holds a table store (can be
seen using yaml_agent_string(agent = agent)
). Let's put that file in the
working directory (the pointblank package has the corresponding YAML
file):
yml_tbl_store_path <-
system.file(
"yaml", "tbl_store.yml",
package = "pointblank"
)
file.copy(from = yml_tbl_store_path, to = ".")
As can be seen from the validation report, no interrogation was yet
performed. Saving an agent to YAML will remove any traces of interrogation
data and serve as a plan for a new interrogation on the same target table. We
can either follow this up with with interrogate()
and get an agent with
intel, or, we can interrogate directly from the YAML file with
yaml_agent_interrogate()
:
agent <- yaml_agent_interrogate(filename = yml_file_path)
agent
See also
Other pointblank YAML:
yaml_agent_interrogate()
,
yaml_agent_show_exprs()
,
yaml_agent_string()
,
yaml_exec()
,
yaml_informant_incorporate()
,
yaml_read_informant()
,
yaml_write()