summaryrefslogtreecommitdiffstats
path: root/src/arrow/r/man/array.Rd
diff options
context:
space:
mode:
Diffstat (limited to 'src/arrow/r/man/array.Rd')
-rw-r--r--src/arrow/r/man/array.Rd107
1 files changed, 107 insertions, 0 deletions
diff --git a/src/arrow/r/man/array.Rd b/src/arrow/r/man/array.Rd
new file mode 100644
index 000000000..78d3eaff6
--- /dev/null
+++ b/src/arrow/r/man/array.Rd
@@ -0,0 +1,107 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/array.R, R/scalar.R
+\docType{class}
+\name{array}
+\alias{array}
+\alias{Array}
+\alias{DictionaryArray}
+\alias{StructArray}
+\alias{ListArray}
+\alias{LargeListArray}
+\alias{FixedSizeListArray}
+\alias{StructScalar}
+\title{Arrow Arrays}
+\description{
+An \code{Array} is an immutable data array with some logical type
+and some length. Most logical types are contained in the base
+\code{Array} class; there are also subclasses for \code{DictionaryArray}, \code{ListArray},
+and \code{StructArray}.
+}
+\section{Factory}{
+
+The \code{Array$create()} factory method instantiates an \code{Array} and
+takes the following arguments:
+\itemize{
+\item \code{x}: an R vector, list, or \code{data.frame}
+\item \code{type}: an optional \link[=data-type]{data type} for \code{x}. If omitted, the type
+will be inferred from the data.
+}
+
+\code{Array$create()} will return the appropriate subclass of \code{Array}, such as
+\code{DictionaryArray} when given an R factor.
+
+To compose a \code{DictionaryArray} directly, call \code{DictionaryArray$create()},
+which takes two arguments:
+\itemize{
+\item \code{x}: an R vector or \code{Array} of integers for the dictionary indices
+\item \code{dict}: an R vector or \code{Array} of dictionary values (like R factor levels
+but not limited to strings only)
+}
+}
+
+\section{Usage}{
+\preformatted{a <- Array$create(x)
+length(a)
+
+print(a)
+a == a
+}
+}
+
+\section{Methods}{
+
+\itemize{
+\item \verb{$IsNull(i)}: Return true if value at index is null. Does not boundscheck
+\item \verb{$IsValid(i)}: Return true if value at index is valid. Does not boundscheck
+\item \verb{$length()}: Size in the number of elements this array contains
+\item \verb{$offset}: A relative position into another array's data, to enable zero-copy slicing
+\item \verb{$null_count}: The number of null entries in the array
+\item \verb{$type}: logical type of data
+\item \verb{$type_id()}: type id
+\item \verb{$Equals(other)} : is this array equal to \code{other}
+\item \verb{$ApproxEquals(other)} :
+\item \verb{$Diff(other)} : return a string expressing the difference between two arrays
+\item \verb{$data()}: return the underlying \link{ArrayData}
+\item \verb{$as_vector()}: convert to an R vector
+\item \verb{$ToString()}: string representation of the array
+\item \verb{$Slice(offset, length = NULL)}: Construct a zero-copy slice of the array
+with the indicated offset and length. If length is \code{NULL}, the slice goes
+until the end of the array.
+\item \verb{$Take(i)}: return an \code{Array} with values at positions given by integers
+(R vector or Array Array) \code{i}.
+\item \verb{$Filter(i, keep_na = TRUE)}: return an \code{Array} with values at positions where logical
+vector (or Arrow boolean Array) \code{i} is \code{TRUE}.
+\item \verb{$SortIndices(descending = FALSE)}: return an \code{Array} of integer positions that can be
+used to rearrange the \code{Array} in ascending or descending order
+\item \verb{$RangeEquals(other, start_idx, end_idx, other_start_idx)} :
+\item \verb{$cast(target_type, safe = TRUE, options = cast_options(safe))}: Alter the
+data in the array to change its type.
+\item \verb{$View(type)}: Construct a zero-copy view of this array with the given type.
+\item \verb{$Validate()} : Perform any validation checks to determine obvious inconsistencies
+within the array's internal data. This can be an expensive check, potentially \code{O(length)}
+}
+}
+
+\examples{
+\dontshow{if (arrow_available()) (if (getRversion() >= "3.4") withAutoprint else force)(\{ # examplesIf}
+my_array <- Array$create(1:10)
+my_array$type
+my_array$cast(int8())
+
+# Check if value is null; zero-indexed
+na_array <- Array$create(c(1:5, NA))
+na_array$IsNull(0)
+na_array$IsNull(5)
+na_array$IsValid(5)
+na_array$null_count
+
+# zero-copy slicing; the offset of the new Array will be the same as the index passed to $Slice
+new_array <- na_array$Slice(5)
+new_array$offset
+
+# Compare 2 arrays
+na_array2 <- na_array
+na_array2 == na_array # element-wise comparison
+na_array2$Equals(na_array) # overall comparison
+\dontshow{\}) # examplesIf}
+}