new_file_definition_excel_: Helper function for 'new_file_definition_excel()'

Description Usage Arguments

View source: R/file_definition.R

Description

Helper function for new_file_definition_excel()

Usage

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
new_file_definition_excel_(
  file_path,
  specification_files = NULL,
  range = NULL,
  sheet,
  cols = NULL,
  col_names = NULL,
  col_types = NULL,
  file_meta = NULL,
  header,
  skip_rows,
  na,
  trim_ws,
  n_max,
  to_lower,
  rename_cols,
  adapters = new_adapters(),
  cols_keep,
  extra_col_name = NULL,
  extra_col_val = NULL,
  extra_col_file_path,
  err_h,
  ...
)

Arguments

file_path

A string holding the path to the data file.

specification_files

An optional character vector holding the paths to the files, where the file structure is described.

range

An optional string, holding an EXCEL range string, defining the data range in the spread sheet. If header is set to TRUE, then the range must include a header row.

sheet

A string or an integer number:

  • string: The value defines the name of the sheet, which should be read.

  • integer: The value defines the position of the sheet, which should be read. (start counting with 1).

cols

An optional list argument, holding the column definitions. This argument can be used instead of the arguments col_names, col_types, col_start, col_end, col_widths, in order to define the column structure. If the argument cols is used, then non of the col_* argument are allowed. If so, the cols argument has the following structure: It is list, where each list entry fully describes a single column. Each list entry must have the same subselection of the following possible list entries:

  • type: (obligatoric) A string value defining the data type of the column. The following values are allowed: "character", "logical", "integer", "numeric" and "NULL" (for skipping this column). In the case of SAS files the type information can be omitted, since the data type information is stored in the SAS data files, but the argument type can still be useful in order to check that the read data column have the expected data type. For SAS-Files this check is done automatically after reading the data with read_data().

  • name: (optional) A string holding the column name.

  • start: (optional) A number holding the position of the first character of the column.

  • end: (optional) A number holding the position of the last character of the column.

  • width (optional) A numeric holding the number characters of the column.

  • col_meta: (optional) A col_meta class object, holding some meta information for the specific column (column description, possible column values + descriptions of possible column values). For details see section meta information.

col_names

An optional character vector holding the names of the columns. If omitted, then the strings "x1", "x2", ... will be used. In the case of DSV or EXCEL files: If the argument header is set to TRUE, then the column names given in the data header will be used instead. If col_names is also supplied, then the column names given in the DSV, EXCEL or SAS file will be compared with the names given in col_names. Sometimes it is useful, to have the column names to be automatically transformed to lower case (directly after reading the date, but before comparing the column names). This can be achieved by setting to_lower = TRUE. Generally, the argument cols can be used instead, in order to define the column names. If the argument cols is not NULL, then the argument col_names must be omitted.

col_types

A character vector defining the data types for each column. The following strings are allowed: "character", "logical", "integer", "numeric" and "NULL" (for skipping this column). Generally, the argument cols can be used instead, in order to define the column types. If the argument cols is not NULL, then the argument col_types must be omitted. In the case of SAS files the col_types information can be omitted, since the data type information is stored in the SAS data files, but the argument col_types can still be useful in order to check the read data files, if the data types are as expected. For SAS-Files this check is done automatically after reading the data with read_data()

file_meta

An optional file_meta class object, holding some meta information for each data column (column description, possible column values + descriptions of possible column values). For details see section meta information. If the argument cols is not NULL, then the argument file_meta must be omitted.

header

A logical value, which defines if the first row contains the data headers. If set to TRUE, then the names given in the data header will be used as column names instead.

skip_rows

The number of rows to be skipped. In the case of DSV or EXCEL files: If the argument header is set to TRUE, then the first row is always assumed to be the header row.

na

A string representing missing values in the data file.

trim_ws

A logical value, defining if the character values should be stipped of all leading and trailing white spaces.

n_max

A number, defining the maximum number of rows to be read. If n_max = Inf, then all available rows will be read.

to_lower

A logical flag, defining if the names of the columns should be transformed to lower case after reading the data set (by calling read_data()). This transformation will be applied before comparing the column names (in the case of SAS-Files or DSV- and EXCE-Files with header = TRUE). In the case of new_file_definition() the to_lower argument overwrites the to_lower argument in the file_structure class object given in file_structure. If to_lower is omitted, then the file_structure class object remains unchanged. In the case of new_file_definition_fwf(), new_file_definition_dsv(), new_file_definition_excel() or new_file_definition_sas() the argument to_lower must either be TRUE or FALSE.

rename_cols

A logical value, which defines if the columns given in the data file should be overwritten by the columns given in argument col_names. If col_names is not given, then rename_cols has no effect.

adapters

An optional list argument, holding a list of adapter functions (See section adapters).

cols_keep

Either TRUE or a character vector. If set to TRUE, then all columns of the data are kept when calling read_data(). If cols_keep character vector, then the values in cols_keep represent the names of the columns, which are kept when calling read_data().

extra_col_name

An optional string, which defines the column, which will be added to the data set (after reading it with function read_data()). Each entry of the column will have the single value given in extra_col_val. For example: This column is useful when reading similar data files for separate years (one could pass the current data set year to extra_col_name and set extra_col_name = "year"). If extra_col_name is omitted, no column will be added to the data set and then extra_col_val must be omitted as well. additional column with the column name, given in extra_col_name. If omitted, then no column will be added to the data set and the argument extra_col_name must be omitted as well.

extra_col_val

An optional value (any atomic type), which will be added (after reading the data set with function read_data()) as an additional column with the column name, given in extra_col_name. For example: This column is useful when reading similar data files for separate years (one could pass the current data set year to extra_col_name and set extra_col_name = "year"). If omitted, then no column will be added to the data set and the argument extra_col_name must be omitted as well.

extra_col_file_path

Either FALSE or a string. If set to FALSE no file-path-column will be added to the data set, when calling read_data(). If the argument extra_col_file_path is a string, then a column holding the file path of the data file will be added to the read data set, when calling read_data(). The string of extra_col_file_path will be used as column name for this additional column.

err_h

An error handler

...

Additional function arguments for

  • readr::read_fwf() in case of FWF files

  • utils::read.delim() in case of DSV files

  • readxl::read_excel() in case of EXCEL files


a-maldet/readall documentation built on Dec. 18, 2021, 9:23 p.m.