Learn R Programming

wrMisc (version 1.2.3)

readVarColumns: Read tabular content of files with variable number of columns

Description

Reading the content of files where the number of separators (eg tabulation) is variable poses problems with traditional methods for reding files, like read.table. This function reads each line independently and then parses all separators therein. The first line is assumed to be column-headers. Finally, all data will be returned in a matrix adopted to the line with most separators and if the number of column-headers is insufficient, new (unique) column-headers will be generated. Thus, the lines may contain different number of elements, empty elements (ie tabular fields) will always get added to right of data read and their content will be as defined by argument emptyFields (default NA).

Usage

readVarColumns(
  fi,
  path = NULL,
  sep = "\t",
  emptyFields = NA,
  refCo = NULL,
  supNa = NULL,
  callFrom = NULL,
  silent = FALSE
)

Arguments

fi

(character) file-name

path

(character) optional path

sep

(character) separator (between columns)

emptyFields

(NA or character) missing headers will be replaced by the content of 'emptyFields', if NA the last column-name will be re-used and a counter added

refCo

(integer) for custom choice of column to be used as row-names (default will use 1st text-column)

supNa

(character) base for constructing name for columns wo names (+counter starting at 2), default column-name to left of 1st col wo colname

callFrom

(character) allow easier tracking of message(s) produced

silent

(logical) suppress messages

Value

matrix (character or numeric)

Details

Note, this functions assumes one line of header and at least one line of data ! Note, for numeric data the comma is assumed to be US-Style (as '.'). Note, that it is assumed, that any missing fields for the complete tabular view are missing on the right (ie at the end of line) !

See Also

for regular 'complete' data read.table

Examples

Run this code
# NOT RUN {
path1 <- system.file("extdata",package="wrMisc")
fiNa <- "Names1.tsv"
datAll <- readCsvBatch(fiNa,path1)
str(datAll)
# }

Run the code above in your browser using DataLab