cols() includes all columns in the input data, guessing the column types as the default. cols_only() includes only the columns you explicitly specify, skipping the rest.

cols(..., .default = col_guess())

cols_only(...)

Arguments

...

Either column objects created by col_*(), or their abbreviated character names (as described in the col_types argument of read_delim()). If you're only overriding a few columns, it's best to refer to columns by name. If not named, the column types must match the column names exactly.

.default

Any named columns not explicitly overridden in ... will be read with this column type.

Details

The available specifications are: (with string abbreviations in brackets)

See also

Examples

cols(a = col_integer())
#> cols( #> a = col_integer() #> )
cols_only(a = col_integer())
#> cols_only( #> a = col_integer() #> )
# You can also use the standard abbreviations cols(a = "i")
#> cols( #> a = col_integer() #> )
cols(a = "i", b = "d", c = "_")
#> cols( #> a = col_integer(), #> b = col_double(), #> c = col_skip() #> )
# You can also use multiple sets of column definitions by combining # them like so: t1 <- cols( column_one = col_integer(), column_two = col_number()) t2 <- cols( column_three = col_character()) t3 <- t1 t3$cols <- c(t1$cols, t2$cols) t3
#> cols( #> column_one = col_integer(), #> column_two = col_number(), #> column_three = col_character() #> )