PINE LIBRARY

Updated

Library **"columns"**

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

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

Rows and Columns 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 Column off of matrix

Parameters:

**_matrix**: Matrix To Edit

Returns: Array of Last Column, removing it from matrix

**shift(_matrix)**

do shift the first Column off of matrix

Parameters:

**_matrix**: Matrix To Edit

Returns: Array of First Column, removing it from matrix

**get(_matrix, _clmnNum)**

retrieve specific Column of matrix

Parameters:

**_matrix**: Matrix To Edit

**_clmnNum**: Column being Targeted

Returns: Array of selected Column number, leaving in place

**push(_matrix, _clmnNum, _item)**

add single item onto end of Column

Parameters:

**_matrix**: Matrix To Edit

**_clmnNum**: Column being Targeted

**_item**: Item to Push on Column

Returns: shifted item from Column 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, _clmnNum, _item)**

slide single item into start of Column remove last

Parameters:

**_matrix**: Matrix To Edit

**_clmnNum**: Column being Targeted

**_item**: Item to Unshift on Column

Returns: popped item from Column end

**unshift(_matrix, _array)**

add single item into first Column of matrix

Parameters:

**_matrix**: Matrix To Edit

**_array**: Array to unshift into Matrix

Returns: Void

**set(_matrix, _clmnNum, _array)**

replace an array to an existing Column

Parameters:

**_matrix**: Matrix To Edit

**_clmnNum**: Column being Targeted

**_array**: Array to place in Matrix

Returns: Column that was replaced

**insert(_matrix, _clmnNum, _array)**

insert an array to a new Column

Parameters:

**_matrix**: Matrix To Edit

**_clmnNum**: Column being Targeted

**_array**: Array to place in Matrix

Returns: void

**slideDown(_matrix, _array)**

add single item onto end of Column

Parameters:

**_matrix**: Matrix To Edit

**_array**: Array to push to Matrix

Returns: shifted first Column

**slideUp(_matrix, _array)**

add single item onto end of Column

Parameters:

**_matrix**: Matrix To Edit

**_array**: Array to unshift to Matrix

Returns: poppeed last Column

**pullOut(_matrix, _clmnNum)**

add single item onto end of Column

Parameters:

**_matrix**: Matrix To Edit

**_clmnNum**: Column being Targeted

Returns: removed selected Column

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

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

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

do pop last Column off of matrix

Parameters:

Returns: Array of Last Column, removing it from matrix

do shift the first Column off of matrix

Parameters:

Returns: Array of First Column, removing it from matrix

retrieve specific Column of matrix

Parameters:

Returns: Array of selected Column number, leaving in place

add single item onto end of Column

Parameters:

Returns: shifted item from Column start

add single item onto end of matrix

Parameters:

Returns: Void

slide single item into start of Column remove last

Parameters:

Returns: popped item from Column end

add single item into first Column of matrix

Parameters:

Returns: Void

replace an array to an existing Column

Parameters:

Returns: Column that was replaced

insert an array to a new Column

Parameters:

Returns: void

add single item onto end of Column

Parameters:

Returns: shifted first Column

add single item onto end of Column

Parameters:

Returns: poppeed last Column

add single item onto end of Column

Parameters:

Returns: removed selected Column

Release Notes

v2Small update for zero sized matrixes

Release Notes

v3Methods :)

Release Notes

v4Added:

Namespace types: matrix<int>

Parameters:

Returns: sorted matrix

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.

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.