col2int() transforms spreadsheet-style column identifiers (e.g., "A", "B", "AA")
into their corresponding integer indices. This utility is fundamental for
programmatic data manipulation, where "A" is mapped to 1, "B" to 2, and "ZZ"
to 702.
Value
An integer vector representing the column indices. Returns NULL
if the input x is NULL, or an empty integer vector if the length of
x is zero.
Details
The function is designed to handle various input formats encountered during
spreadsheet data processing. In addition to single column labels, it supports
range notation using the colon operator (e.g., "A:C"). When a range is
detected, the function internally expands the notation into a complete
sequence of integers (e.g., 1, 2, 3). This behavior is particularly useful
when passing column selections to functions like wb_to_df() or wb_read().
Input validation ensures that only atomic vectors are processed. If the input
is already numeric or a factor, the function ensures the values fall within
the valid spreadsheet column range before coercion to integers. Note that
the presence of NA values in the input will trigger an error to maintain
data integrity during index calculation.
Notes
Range expansion via
:is performed iteratively until all sequences are resolved into individual integer components.In compliance with spreadsheet software standards, the function validates that indices do not exceed the maximum allowable column limit.
