Struct arrow::array::DictionaryArray[][src]

pub struct DictionaryArray<K: ArrowPrimitiveType> { /* fields omitted */ }
Expand description

A dictionary array where each element is a single value indexed by an integer key. This is mostly used to represent strings or a limited set of primitive types as integers, for example when doing NLP analysis or representing chromosomes by name.

Example with nullable data:

use arrow::array::{DictionaryArray, Int8Array};
use arrow::datatypes::Int8Type;
let test = vec!["a", "a", "b", "c"];
let array : DictionaryArray<Int8Type> = test.iter().map(|&x| if x == "b" {None} else {Some(x)}).collect();
assert_eq!(array.keys(), &Int8Array::from(vec![Some(0), Some(0), None, Some(1)]));

Example without nullable data:

use arrow::array::{DictionaryArray, Int8Array};
use arrow::datatypes::Int8Type;
let test = vec!["a", "a", "b", "c"];
let array : DictionaryArray<Int8Type> = test.into_iter().collect();
assert_eq!(array.keys(), &Int8Array::from(vec![0, 0, 1, 2]));

Implementations

impl<'a, K: ArrowPrimitiveType> DictionaryArray<K>[src]

pub fn keys(&self) -> &PrimitiveArray<K>[src]

Return an iterator to the keys of this dictionary.

pub fn keys_array(&self) -> PrimitiveArray<K>[src]

Returns an array view of the keys of this dictionary

pub fn lookup_key(&self, value: &str) -> Option<K::Native>[src]

Returns the lookup key by doing reverse dictionary lookup

pub fn values(&self) -> ArrayRef[src]

Returns an ArrayRef to the dictionary values.

pub fn value_type(&self) -> DataType[src]

Returns a clone of the value type of this list.

pub fn len(&self) -> usize[src]

The length of the dictionary is the length of the keys array.

pub fn is_empty(&self) -> bool[src]

Whether this dictionary is empty

pub fn is_ordered(&self) -> bool[src]

Trait Implementations

impl<T: ArrowPrimitiveType> Array for DictionaryArray<T>[src]

fn as_any(&self) -> &dyn Any[src]

Returns the array as Any so that it can be downcasted to a specific implementation. Read more

fn data(&self) -> &ArrayData[src]

Returns a reference to the underlying data of this array.

fn get_buffer_memory_size(&self) -> usize[src]

Returns the total number of bytes of memory occupied by the buffers owned by this array.

fn get_array_memory_size(&self) -> usize[src]

Returns the total number of bytes of memory occupied physically by this array.

fn data_ref(&self) -> &ArrayData[src]

Returns a reference-counted pointer to the underlying data of this array.

fn data_type(&self) -> &DataType[src]

Returns a reference to the DataType of this array. Read more

fn slice(&self, offset: usize, length: usize) -> ArrayRef[src]

Returns a zero-copy slice of this array with the indicated offset and length. Read more

fn len(&self) -> usize[src]

Returns the length (i.e., number of elements) of this array. Read more

fn is_empty(&self) -> bool[src]

Returns whether this array is empty. Read more

fn offset(&self) -> usize[src]

Returns the offset into the underlying data used by this array(-slice). Note that the underlying data can be shared by many arrays. This defaults to 0. Read more

fn is_null(&self, index: usize) -> bool[src]

Returns whether the element at index is null. When using this function on a slice, the index is relative to the slice. Read more

fn is_valid(&self, index: usize) -> bool[src]

Returns whether the element at index is not null. When using this function on a slice, the index is relative to the slice. Read more

fn null_count(&self) -> usize[src]

Returns the total number of null values in this array. Read more

fn to_raw(&self) -> Result<(*const FFI_ArrowArray, *const FFI_ArrowSchema)>[src]

returns two pointers that represent this array in the C Data Interface (FFI)

impl<T: ArrowPrimitiveType> Debug for DictionaryArray<T>[src]

fn fmt(&self, f: &mut Formatter<'_>) -> Result[src]

Formats the value using the given formatter. Read more

impl<T: ArrowPrimitiveType> From<ArrayData> for DictionaryArray<T>[src]

Constructs a DictionaryArray from an array data reference.

fn from(data: ArrayData) -> Self[src]

Performs the conversion.

impl<'a, T: ArrowPrimitiveType + ArrowDictionaryKeyType> FromIterator<&'a str> for DictionaryArray<T>[src]

Constructs a DictionaryArray from an iterator of strings.

fn from_iter<I: IntoIterator<Item = &'a str>>(iter: I) -> Self[src]

Creates a value from an iterator. Read more

impl<'a, T: ArrowPrimitiveType + ArrowDictionaryKeyType> FromIterator<Option<&'a str>> for DictionaryArray<T>[src]

Constructs a DictionaryArray from an iterator of optional strings.

fn from_iter<I: IntoIterator<Item = Option<&'a str>>>(iter: I) -> Self[src]

Creates a value from an iterator. Read more

impl<T: ArrowPrimitiveType> JsonEqual for DictionaryArray<T>[src]

fn equals_json(&self, json: &[&Value]) -> bool[src]

Checks whether arrow array equals to json array.

fn equals_json_values(&self, json: &[Value]) -> bool[src]

Checks whether arrow array equals to json array.

impl<T: ArrowPrimitiveType> PartialEq<Value> for DictionaryArray<T>[src]

fn eq(&self, json: &Value) -> bool[src]

This method tests for self and other values to be equal, and is used by ==. Read more

#[must_use]
fn ne(&self, other: &Rhs) -> bool
1.0.0[src]

This method tests for !=.

Auto Trait Implementations

impl<K> !RefUnwindSafe for DictionaryArray<K>

impl<K> Send for DictionaryArray<K>

impl<K> Sync for DictionaryArray<K>

impl<K> Unpin for DictionaryArray<K>

impl<K> !UnwindSafe for DictionaryArray<K>

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

pub fn type_id(&self) -> TypeId[src]

Gets the TypeId of self. Read more

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

pub fn borrow(&self) -> &T[src]

Immutably borrows from an owned value. Read more

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

pub fn borrow_mut(&mut self) -> &mut T[src]

Mutably borrows from an owned value. Read more

impl<T> From<T> for T[src]

pub fn from(t: T) -> T[src]

Performs the conversion.

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

pub fn into(self) -> U[src]

Performs the conversion.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>[src]

Performs the conversion.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

pub fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>[src]

Performs the conversion.

impl<V, T> VZip<V> for T where
    V: MultiLane<T>, 

pub fn vzip(self) -> V