Library: Array

Additional functions for array.
remove_duplicates(array_in)
Remove duplicates in array.
Parameters:
array_in: (int[]/float[]/string[]) Array contains duplicates.
Returns: Array without duplicates.
// Example: int
import tuele99/xarray/1 as xarray
c = xarray.remove_duplicates(array.from(1, 4, 2, 1, 2))
plot(array.size(c))
plot(array.get(c, 0))
plot(array.get(c, 1))
// Example: float
import tuele99/xarray/1 as xarray
c = xarray.remove_duplicates(array.from(1.0, 4.0, 2.0, 1.0, 2.0))
plot(array.size(c))
plot(array.get(c, 0))
plot(array.get(c, 1))
// Example: string
import tuele99/xarray/1 as xarray
c = xarray.remove_duplicates(array.from("green", "red", "green", "red", "green"))
plot(array.size(c)) // value = 2
label0 = label.new(x=last_bar_index, y=0, yloc=yloc.belowbar, text=array.get(c, 0), style=label.style_label_left, color=color.new(color.black, 100), textcolor=color.green) // below text = "green"
label1 = label.new(x=last_bar_index, y=0, yloc=yloc.abovebar, text=array.get(c, 1), style=label.style_label_left, color=color.new(color.black, 100), textcolor=color.red) // above text = "red"
Added:
remove_duplicates(array_in_1, array_in_2)
Remove duplicates in 2 arrays.
Parameters:
array_in_1: (int[]/float[]/string[]) Array contains duplicates.
array_in_2: (int[]/float[]/string[]) Array contains duplicates.
Returns: 2 arrays without duplicates.
Fix bug.
// Example: lib(int, float)
import tuele99/xarray/3 as xarray
[c, d] = xarray.remove_duplicates(array.from(1, 1, 2, 2, 3), array.from(4.0, 4.0, 5.0, 6.0, 7.0))
plot(array.size(c))
plot(array.get(c, 0))
plot(array.get(c, 1))
plot(array.size(d))
plot(array.get(d, 0))
plot(array.get(d, 1))
// Example: lib(int, string)
import tuele99/xarray/3 as xarray
[c, d] = xarray.remove_duplicates(array.from(1, 2, 1, 2, 2), array.from("green", "red", "green", "red", "green"))
plot(array.size(d)) // value = 3
label0 = label.new(x=last_bar_index, y=0, yloc=yloc.belowbar, text=array.get(d, 2), style=label.style_label_left, color=color.new(color.black, 100), textcolor=color.green) // below text = "green"
label1 = label.new(x=last_bar_index, y=0, yloc=yloc.abovebar, text=array.get(d, 1), style=label.style_label_left, color=color.new(color.black, 100), textcolor=color.red) // above text = "red"
Change syntax.
remove_duplicates(int[] array_in_out)
remove_duplicates(float[] array_in_out)
remove_duplicates(string[] array_in_out)
remove_duplicates(int[] array_in_out_1, float[] array_in_out_2)
remove_duplicates(float[] array_in_out_1, int[] array_in_out_2)
remove_duplicates(int[] array_in_out_1, string[] array_in_out_2)
remove_duplicates(string[] array_in_out_1, int[] array_in_out_2)
remove_duplicates(float[] array_in_out_1, string[] array_in_out_2)
remove_duplicates(string[] array_in_out_1, float[] array_in_out_2)
remove_duplicates(int[] array_in_out_1, int[] array_in_out_2)
remove_duplicates(float[] array_in_out_1, float[] array_in_out_2)
remove_duplicates(string[] array_in_out_1, string[] array_in_out_2)
// Example: lib(int, float)
import tuele99/xarray/4 as xarray
c = array.from(1, 1, 2, 2, 3)
d = array.from(4.0, 4.0, 5.0, 6.0, 7.0)
xarray.remove_duplicates(c, d)
plot(array.size(c)) // 4
plot(array.get(c, 0)) // 1
plot(array.get(c, 1)) // 2
plot(array.size(d)) // 4
plot(array.get(d, 0)) // 4.0
plot(array.get(d, 1)) // 5.0
Updated: Remove 3D duplicates.
remove_duplicates(int[] array_in_out_1, float[] array_in_out_2, bool[] array_in_out_3)
Added:
remove_duplicates(float[] array_in_out_1, int[] array_in_out_2, bool[] array_in_out_3)
remove_duplicates(int[] array_in_out_1, float[] array_in_out_2, string[] array_in_out_3)
remove_duplicates(float[] array_in_out_1, int[] array_in_out_2, string[] array_in_out_3)
Biblioteca Pine
Siguiendo fielmente el espíritu de TradingView, el autor ha publicado este código Pine como una biblioteca de código, permitiendo que otros programadores de Pine en nuestra comunidad puedan volver a utilizarlo. ¡Un brindis por el autor! Puede utilizar esta biblioteca de forma privada o en otras publicaciones de código abierto, pero tenga en cuenta que la reutilización de este código en publicaciones se rige por las Normas internas.
Disclaimer: tinyurl.com/4rtrwhfd
Exención de responsabilidad
Biblioteca Pine
Siguiendo fielmente el espíritu de TradingView, el autor ha publicado este código Pine como una biblioteca de código, permitiendo que otros programadores de Pine en nuestra comunidad puedan volver a utilizarlo. ¡Un brindis por el autor! Puede utilizar esta biblioteca de forma privada o en otras publicaciones de código abierto, pero tenga en cuenta que la reutilización de este código en publicaciones se rige por las Normas internas.
Disclaimer: tinyurl.com/4rtrwhfd