For certain non-rectangular data formats, it can be useful to parse the data into a melted format where each row represents a single token.
melt_delim_chunked(file, callback, chunk_size = 10000, delim, quote = "\"", escape_backslash = FALSE, escape_double = TRUE, locale = default_locale(), na = c("", "NA"), quoted_na = TRUE, comment = "", trim_ws = FALSE, skip = 0, progress = show_progress(), skip_empty_rows = FALSE) melt_csv_chunked(file, callback, chunk_size = 10000, locale = default_locale(), na = c("", "NA"), quoted_na = TRUE, quote = "\"", comment = "", trim_ws = TRUE, skip = 0, progress = show_progress(), skip_empty_rows = FALSE) melt_csv2_chunked(file, callback, chunk_size = 10000, locale = default_locale(), na = c("", "NA"), quoted_na = TRUE, quote = "\"", comment = "", trim_ws = TRUE, skip = 0, progress = show_progress(), skip_empty_rows = FALSE) melt_tsv_chunked(file, callback, chunk_size = 10000, locale = default_locale(), na = c("", "NA"), quoted_na = TRUE, quote = "\"", comment = "", trim_ws = TRUE, skip = 0, progress = show_progress(), skip_empty_rows = FALSE)
file | Either a path to a file, a connection, or literal data (either a single string or a raw vector). Files ending in Literal data is most useful for examples and tests. It must contain at least one new line to be recognised as data (instead of a path) or be a vector of greater than length 1. Using a value of |
---|---|
callback | A callback function to call on each chunk |
chunk_size | The number of rows to include in each chunk |
delim | Single character used to separate fields within a record. |
quote | Single character used to quote strings. |
escape_backslash | Does the file use backslashes to escape special
characters? This is more general than |
escape_double | Does the file escape quotes by doubling them?
i.e. If this option is |
locale | The locale controls defaults that vary from place to place.
The default locale is US-centric (like R), but you can use
|
na | Character vector of strings to interpret as missing values. Set this
option to |
quoted_na | Should missing values inside quotes be treated as missing values (the default) or strings. |
comment | A string used to identify comments. Any text after the comment characters will be silently ignored. |
trim_ws | Should leading and trailing whitespace be trimmed from each field before parsing it? |
skip | Number of lines to skip before reading data. |
progress | Display a progress bar? By default it will only display
in an interactive session and not while knitting a document. The display
is updated every 50,000 values and will only display if estimated reading
time is 5 seconds or more. The automatic progress bar can be disabled by
setting option |
skip_empty_rows | Should blank rows be ignored altogether? i.e. If this
option is |
melt_delim_chunked()
and the specialisations melt_csv_chunked()
,
melt_csv2_chunked()
and melt_tsv_chunked()
read files by a chunk of rows
at a time, executing a given function on one chunk before reading the next.
Other chunked: callback
,
read_delim_chunked
,
read_lines_chunked
# Cars with 3 gears f <- function(x, pos) subset(x, data_type == "integer") melt_csv_chunked(readr_example("mtcars.csv"), DataFrameCallback$new(f), chunk_size = 5)#> # A tibble: 218 x 4 #> row col data_type value #> <dbl> <dbl> <chr> <chr> #> 1 2 1 integer 21 #> 2 2 2 integer 6 #> 3 2 3 integer 160 #> 4 2 4 integer 110 #> 5 2 8 integer 0 #> 6 2 9 integer 1 #> 7 2 10 integer 4 #> 8 2 11 integer 4 #> 9 3 1 integer 21 #> 10 3 2 integer 6 #> # … with 208 more rows