2015-08-19 3 views
1

У меня есть список с 20 пунктами, и я хочу, чтобы подсчитать количество вхождений каждого элемента в list.i знать код нижеподсчитать количество вхождений каждого элемента в списке

to-report frequency [i lst] 
report length filter [? = i] list 
end 

, но не хочу написать 20 строк, как

let C1 frequency 1 (list1) 
let C2 frequency 2 (list1) 
. 
. 
. 
let C20 frequency 20 (list1) 

ответ

3

Это:

map [frequency ? list1] n-values 20 [? + 1] 

Пример запуска:

observer> set list1 [1 4 4 7 10 10 10 14] 
observer> show map [frequency ? list1] n-values 20 [? + 1] 
observer: [1 0 0 2 0 0 1 0 0 3 0 0 0 1 0 0 0 0 0 0] 
Смежные вопросы