В Netlogo можно ли преобразовать список логических переменных из true / false в 1/0? - PullRequest
0 голосов
/ 30 января 2019

Я создаю список логических значений, представляющих набор исправлений со следующим кодом, где «препятствие» - это логическое свойство исправления, которое говорит, является ли оно препятствием, а «область карты» являетсясписок определенных патчей.

set cell-walls map [ p -> [ obstacle ] of p] map-area

Затем я печатаю стенки ячеек в текстовый файл, и он будет печатать [true true false true ...].Вместо этого мне нужно напечатать [1 1 0 1 ...].

Может быть, я смогу заменить элементы в списке или создать новый список, перебирая этот и добавляя 1 или 0 для каждого элемента,Я не уверен, как это сделать в Netlogo.Помощь приветствуется!:)

1 Ответ

0 голосов
/ 30 января 2019

Если у вас только когда-либо есть значения true или false, вы, вероятно, можете обойтись чем-то вроде:

to boolean-to-numeric
  let bool [ true false true ]
  let bool2 map [ i -> ifelse-value ( i = true ) [ 1 ] [ 0 ] ] bool 
  print bool2
end

Но учтите, что приведенное выше сообщит 0 для любых других значенийчем true, не только для false.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...