41
Si conocemos la posición que ocupa un elemento dentro de una lista, podemos
eliminarlo con la primitiva remove-item:
remove-item 4 [a b c d e f g h i j k ] --> [a b c d f g h i j k] ;; nota: a, b, …, k son
números o variables.
Nota: Recuerda que Netlogo numera las listas a partir del elemento 0.
Una variación de la primitiva remove es la primitiva remove-duplicates, que elimina
todos los elementos repetidos en la lista, dejando únicamente la primera aparición de
los mismos. Ejemplo:
remove-duplicates [a a b b b c c d e e e e e f f g g h h i i j j j k k ] --> [a b c d e f g h
i j k]
Para reemplazar un elemento de la lista por otro, empleamos la primitiva replace-item:
replace-item 4 [a b c d e f g h i j k ] z --> [a b c d z f g h i j k] ;; nota: a, b, …, k
son números o variables.
Otras primitivas útiles relacionadas con listas:
Para conocer la longitud de una lista (esto es, su número de elementos) empleamos la
primitiva length:
length [a b c d e f g h i j k ] --> 11 ;; nota: a, b, …, k son números o variables.
Para obtener el elemento que más se repite dentro de una lista (es decir, la moda), se
emplea la primitiva modes:
modes [a a b c d e f g h i j k] --> a ;; nota: a, b, …, k son números o variables.
Para conocer la posición de un elemento dentro de una lista se utiliza la primitiva
position:
position a [a b c d e f g h i j k ] --> 0 ;; nota: a, b, …, k son números o
variables.
Para desordenar aleatoriamente los elementos de una lista utilizamos la primitiva
shuffle:
shuffle [a b c d e f g h i j k ] --> [d k a c e i j h f b g] ;; nota: a, b, …, k son
números o variables.
Para obtener una lista ordenada de manera inversa a la original, empleamos la
primitiva reverse:
reverse [a b c d e f g h i j k ] --> [k j i h g f e d c b a] ;; nota: a, b, …, k son
números o variables.