turicreate.SArray.vector_slice — Turi Create API 6.4.1 documentation (original) (raw)
SArray. vector_slice(start, end=None)¶
If this SArray contains vectors or lists, this returns a new SArray containing each individual element sliced, between start and end (exclusive).
| Parameters: | start : int The start position of the slice. end : int, optional. The end position of the slice. Note that the end position is NOT included in the slice. Thus a g.vector_slice(1,3) will extract entries in position 1 and 2. If end is not specified, the return array will contain only one element, the element at the start position. |
|---|---|
| Returns: | out : SArray Each individual vector sliced according to the arguments. |
Examples
If g is a vector of floats:
g = SArray([[1,2,3],[2,3,4]]) g dtype: array Rows: 2 [array('d', [1.0, 2.0, 3.0]), array('d', [2.0, 3.0, 4.0])]
g.vector_slice(0) # extracts the first element of each vector dtype: float Rows: 2 [1.0, 2.0]
g.vector_slice(0, 2) # extracts the first two elements of each vector dtype: array.array Rows: 2 [array('d', [1.0, 2.0]), array('d', [2.0, 3.0])]
If a vector cannot be sliced, the result will be None:
g = SArray([[1],[1,2],[1,2,3]]) g dtype: array.array Rows: 3 [array('d', [1.0]), array('d', [1.0, 2.0]), array('d', [1.0, 2.0, 3.0])]
g.vector_slice(2) dtype: float Rows: 3 [None, None, 3.0]
g.vector_slice(0,2) dtype: list Rows: 3 [None, array('d', [1.0, 2.0]), array('d', [1.0, 2.0])]
If g is a vector of mixed types (float, int, str, array, list, etc.):
g = SArray([['a',1,1.0],['b',2,2.0]]) g dtype: list Rows: 2 [['a', 1, 1.0], ['b', 2, 2.0]]
g.vector_slice(0) # extracts the first element of each vector dtype: list Rows: 2 [['a'], ['b']]
