nm_input()
was significantly refactored to produce output more typically seen in practice as well as adding some convenience features (#150).- the default output is now wide format
- data set labels can get renamed with
<new name> = <old name>
syntax, passed under...
- columns with type
<character>
are dropped by default - the
cat
argument was renamed.cat
- the
.drop
argument was added to indicate a group of data items to drop from the problem - the previous long output can be recreated using
.long = TRUE
- the
.decodes
argument was added to control appearance of categorical data decode information in the long output
- Use
all_of()
when tidy selecting; this will suppress warnings inys_extend()
andys_add_factors()
(#145).
- Adds
ys_factors()
to replace data set columns with their factor version, optionally retaining the original values in new columns (#141).
-
Fix bug where character
type
was inferred whenevervalues
were character, overriding what the user specified; now, only infer when user doesn't specifytype
(#129). -
Add
ys_col_note()
to generate a string of column names and definitions based onshort
orlabel
; use this when column names appear in a table and require explanation in a a footnote (#119, #120). -
Put stories in yaml format; add script to build validation docs from the yaml file (#123, #124).
-
Adds
ys_extend()
to extend a spec object with additional columns with any external yaml file; addsextend_file
field inSETUP__:
to identify a single file which can be automatically called upon for extension #112, #113. -
ys_add_factors()
refactored to only add factors for available columns #88, #91. -
ys_add_factors()
restores tidyselect semantics when specifying a subset of columns for adding factors #109, #110. -
Add
ys_table()
to render the spec in TeX table code to be included in a report appendix #98, #104. -
ys_select()
returns an empty spec object when nothing is selected #100, #101. -
Add
ys_prune()
to select any data columns that appear in the spec as well as other optional columns #87, #97. #99. -
Add
ys_recode()
to convert a vector of data set column names toshort
version, optionally addingunit
#86, #114. -
ys_load()
will now detect ifvalues
/decode
are mis-coded as a list of lists; all items invalues
anddecode
must be atomic #106, #108. -
ys_load()
will issue more informative error message whenshort
contains too many characters #102, 105. -
ys_document()
now acceptssponsor
andprojectnumber
arguments which get passed through to the rendered define document #90, #92.
-
Fix bug where dots in lookup file were not properly inherited by spec columns that didn't already have a dots list (#69)
-
Fix bug in namespace creation when multiple fields include namespace info (#81)
-
Fix bug where specification document didn't properly render when using R 4.1 (#73)
-
ys_add_factors()
now substitutes missing values (NA
) with a character string supplied by the user prior to making the factor; thedecode
list is also updated so that the "missing" data is the last level; the string is supplied by the new argument.missing
argument (#79)
ys_select()
will now rename columns if new names are provided (#62)ys_filter()
will subset ayspec
object based on logical criteria (#65)ys_rename()
will rename columns in ayspec
object (#63)ys_join()
will combine two or moreyspec
objects together (#64)- New
SETUP__
field calledflags
that can be used to flag sets of columns (#62) ys_fill_dots()
will supplement thedots
list with default values (#62)- Add vignettes back to the package
- Add
ys_select()
to select a subset of columns from a yspec object #24 - Refactor
axis_col_labs
to add vars argument; if missing, all col / labs will be created; otherwise, the user can select a subset to be created - Deprecate
mrgtemplate()
; addeddefinetemplate()
that is used as default for a more styled define document #37 - Add ability to include alternate representations of field information through namespacing #38
- Fix bug in
ys_check
where the return value was not correct whenerror_on_fail
was set toFALSE
#31 - Add
nm_input
function to print nonmem input data text to the console #8 - Fix bug where some meta data (
data_stem
,name
,spec_file
) was not updated when importing from another spec #5 - Fix bug where
ys_get_short_unit
was not returning a list #2 - Fix bug where
axis_col_labs
doesn't do title case or short max #26 - Better reporting of bad values in discrete data column #27
- Add minimum version numbers for dependency packages
- Add
long
argument topander_table
to create longer tables - Fix bug where
data_stem
meta field was not getting propagated into data set name in the define document #35 - Add ability to update project number and sponsor information in a yspec object or a yproj object #36
- Fix bug where
unit
input was not properly validated #45 - Fix bug where
ys_check
didn't issue error when data set columns were not in the right order #54 - New field for data set columns:
label
; this will be used when labeling data sets for xpt export #60 - The label field can be made optional with
ys.require.label
option #99 - Add function (
ys_add_labels
) to label data set columns #63 - Add function (
update_short
) to change the value in theshort
field #82 - Add meta field (
import
) to enable import of contents of another spec #84 - Add meta field option (
character_last
) to push all character columns to the back of the spec object #86 - Add meta field option (
comment_col
) to identify the column that is for comments; character comment columns will not be pushed to back #86 - Add argument to
ys_check
so that an error is not generated when checking the data, but ratherFALSE
is returned #88 - Add functionality to add all possible factors to data set with
yspec_add_factors
#91 - Add new data column field
make_factor
that will tellyspec_add_factors
to make that column into a factor #91 - The following fields will be collapsed into a single value when they are
entered as array:
source
,comment
,long
#93 - Add alias
ys_add_factors
toyspec_add_factors
#97 - Add functions to form label, unit, and short; methods for
yspec
andycol
#100
- Released into production
- Fixed bug where column check error were assigned to the wrong column name #7
- Added
as_proj_spec
function that allows creation of a project spec file from individual data set spec objects - Added more flexibility for specifying project and data set spec files in different locations #5
- Function
ys_load
preferred alias forload_spec
- Function
ys_load_file
preferred alias forload_spec_file
- Function
ys_project
preferred alias foras_proj_spec
- Function
ys_document
is a wrapper around bothrender_define
andrender_fda_define
. Use thetype
argument to request a "working" document or a "regulatory" document - Added internal lookup source (
ysdb_internal.yml
) - It is no longer an error to put no data in a column specification;
the
lookup
attribute will be added and yspec will attempt to look up the column in formation in one of the lookup tables ys_get_lookup
will recreate the lookup list for a yspec objectys_lookup_source
will report on the source of each column in an yspec object- In general, we no longer write out a project file; use
ys_project
with a vector of files or yspec objects instead - The table of contents for the regulatory document (
fda_content_table
) now links to the corresponding.xpt
file; to facilitate testing, argumentsloc
andext
have been added so that the linking can be better tested (e.g. create a document that links to a.csv
file, which should be easier to open on computers that don't have SAS installed). #20 - Arguments
data_path
anddata_stem
have been added toys_load
- Handler
!look
has been added to indicate that column data should be searched for in the lookup resources - Handler
!value:decode
has been added so that maps can be created with the values on the left hand side (- 0 : male
) - Handler
!decode:value
has been added that recreates the default map handling, but also allows several values to be mapped to the same decode - An error is generated if the number of characters in a column name
is greater than 8. Set the
ys.col.len
option to control the max allowable characters. - Added
verbose
argument to print information to the console while processing a yaml file - Added
ys_help
object that includes example / demo materials, including a function that will export a folder of assets that will work out of the box - Revised package vignettes
- Expanded the
?yspec
help topic to outline the suggested workflow and point to other locations for help - Added custom sanitizer
ys_sanitize
that can be changed through theys.sanitize
option - Added a
glue
field forSETUP__
, where a yaml map can be used to connect value with a name; when the name is inserted in to yaml code as<<name>>
, the value will be substituted in withglue
; this is the proper way to evade the sanitizer when including TeX code in the document - Only "numeric" or "character" will be accepted in the
type
field; and error is generated if anything else appears there - Added
c
method to combine two yspec objects together
render_define
changed to generic function, with methods foryproj
and `character- Removed
projectnumber
andsponsor
arguments torender_define
; that information will be pulled from theSETUP__
block as inrender_fda_define
- The column widths for
x_table
were made smaller so that they fit on our standard page (8.5 x 11 with 7 cm margins on the left and the right)
- Initial validated version