麻烦写入文件

时间:2014-11-04 16:12:52

标签: arrays file netlogo

我在完成这个模型时遇到了麻烦。这个概念是针对一系列海龟提出的问题。每只乌龟代表一个知识领域,每个问题应包含多个随机知识领域。要求其ID与问题中的某个域匹配的海龟应答。然后根据乌龟的能力和专业知识对他们的答案进行评分。

我希望我能将代码的骨头放在一起,但是在我可以将一些输出输出到Excel之前,我无法验证这一点。任何人都可以告诉我,我的写作'说明?运行模型时,不会更新或创建任何文件。你能发现代码中的任何其他缺陷吗?

谢谢, 约翰

globals
[question
answer]

turtles-own 
[abilities 
expertise 
expert
]

to setup
clear-all
file-open "/Users/johnhayes/ProjectFile.csv"
create-turtles 500
set question []
set answer []
reset-ticks
end

to go
ask turtles [initialise-turtles]
create-question
set answer []
ask turtles [give-an-answer]
evaluate
show (list "relevance quality" answer)
stop
tick
if ticks >= 1000 [file-close stop]
print-answers
end

to initialise-turtles ; turtle proc 1
set abilities (random 10)   ; abilities assigned randomly to each turtle. 
set expertise (random 10)   ; expertise assigned randomly to each turtle.
set expert (FALSE)         
end

to create-question
set question n-of 500 turtles 
end

to give-an-answer ; turtle proc 2
if member? self question
[ set expert TRUE ]  ; mark as expert    
end

to evaluate ; turtle proc 3
let expert-group no-turtles
set expert-group (turtles with [expert = TRUE])  
show (list ([abilities] of expert-group))        
show (list ([expertise] of expert-group))       
set answer lput (sum [abilities] of expert-group) answer set answer lput (sum[expertise] of expert-group) answer
end

to print-answers
file-open "/Users/johnhayes/ProjectFile.csv"
file-print answer    
file-close    
end    

1 个答案:

答案 0 :(得分:-1)

'\'是netlogo中的转义字符,它将其读作\你必须加倍。

file-open "/Users/johnhayes/ProjectFile.csv"

变为

file-open "\\Users\\johnhayes\\ProjectFile.csv"

然后将打开或创建项目。

您可能希望在工具下找到使用BehaviorSpace进行输出,并允许您将模型的各种运行的所有输出合并为一个.csv单击new并按照说明进行操作。

在您的情况下,使用答案作为您的记者。

编辑斜线阅读障碍。