kaigouthro

rows

kaigouthro Updated   
Library "rows"
Error Tolerant Matrix Setter/Getter Operations. Easy ways to add/remove items into start and end of rows as well as arrays to grow and shrink matrix.

if mismatched sizes occur the typified NA value will be there to prevent catastrophic crashing.

columns and rows are split into 2 libraries due to limitations on number of exports as well as ease of style (columns.shift(), rows.pop() )


pop(_matrix)
  do pop last row off of matrix
  Parameters:
    _matrix: Matrix To Edit
  Returns: Array of Last row, removing it from matrix

shift(_matrix)
  do shift the first row off of matrix
  Parameters:
    _matrix: Matrix To Edit
  Returns: Array of First row, removing it from matrix

get(_matrix, _rowNum)
  retrieve specific row of matrix
  Parameters:
    _matrix: Matrix To Edit
    _rowNum: Row being Targeted
  Returns: Array of selected row number, leaving in place

push(_matrix, _rowNum, _item)
  add single item onto end of row
  Parameters:
    _matrix: Matrix To Edit
    _rowNum: Row being Targeted
    _item: Item to Push on Row
  Returns: shifted item from row start

push(_matrix, _array)
  add single item onto end of matrix
  Parameters:
    _matrix: Matrix To Edit
    _array: Array to Push on Matrix
  Returns: Void

unshift(_matrix, _rowNum, _item)
  slide single item into start of row remove last
  Parameters:
    _matrix: Matrix To Edit
    _rowNum: Row being Targeted
    _item: Item to Unshift on Row
  Returns: popped item from row end

unshift(_matrix, _array)
  add single item into first row of matrix
  Parameters:
    _matrix: Matrix To Edit
    _array: Array to unshift into Matrix
  Returns: Void

set(_matrix, _rowNum, _array)
  replace an array to an existing row
  Parameters:
    _matrix: Matrix To Edit
    _rowNum: Row being Targeted
    _array: Array to place in Matrix
  Returns: row that was replaced

insert(_matrix, _rowNum, _array)
  insert an array to a new row
  Parameters:
    _matrix: Matrix To Edit
    _rowNum: Row being Targeted
    _array: Array to place in Matrix
  Returns: void

slideDown(_matrix, _array)
  add single item onto end of row
  Parameters:
    _matrix: Matrix To Edit
    _array: Array to push to Matrix
  Returns: shifted first row

slideUp(_matrix, _array)
  add single item onto end of row
  Parameters:
    _matrix: Matrix To Edit
    _array: Array to unshift to Matrix
  Returns: popped last row

pullOut(_matrix, _rowNum)
  add single item onto end of row
  Parameters:
    _matrix: Matrix To Edit
    _rowNum: Row being Targeted
  Returns: removed selected row
Release Notes:
v2

Small update for zero sized matrixes
Release Notes:
v3

Accidental chart image replacement :+)
Release Notes:
v4

Methods
Release Notes:
v5

Added:
method sortby(_matrix, _colNum)
  Namespace types: matrix
  Parameters:
    _matrix (matrix): Matrix To Sort
    _colNum (int): col to utilize for sorting
  Returns: sorted matrix
Pine library

In true TradingView spirit, the author has published this Pine code as an open-source library so that other Pine programmers from our community can reuse it. Cheers to the author! You may use this library privately or in other open-source publications, but reuse of this code in a publication is governed by House Rules.

Disclaimer

The information and publications are not meant to be, and do not constitute, financial, investment, trading, or other types of advice or recommendations supplied or endorsed by TradingView. Read more in the Terms of Use.

Want to use this library?

Copy the following line and paste it in your script.