初学R,按照《R语言入门与实践》书中的例子(项目3:老虎机),一模一样写的程序,但一运行就跳出Error in symbols[1] : object of type 'closure' is not subsettable,跟书上对了好几遍,找不出错误,实在摸不着头脑,求前辈指点,非常感谢!
程序如下:
get_symbols<-function(){
wheel<-c("DD","7","BBB","BB","B","C","0")
sample(wheel,size=3,replace=TRUE,
prob=c(0.03,0.03,0.06,0.1,0.25,0.01,0.52))
}
score<-function(symbols){
same<-symbols[1]==symbols[2]&&symbols[1]==symbols[3]
bars<-symbols %in% c("B","BB","BBB")
if(same){
payouts<-c("DD"=100,"7"=80,"BBB"=40,"BB"=25,"B"=10,"C"=10,"0"=0)
prize<-unname(payouts[symbols[1]])
}else if(all(bars)){
prize<-5
}else{
cherries<-sum(symbols=="C")
prize<-c(0,2,5)[cherries+1]
}
diamonds<-sum(symbols=="DD")
prize<-prize*2^diamonds
}
play<-function(){
symbols<-get_symbols
print(symbols)
score(symbols)
}
play()
运行后结果如下:
function(){
wheel<-c("DD","7","BBB","BB","B","C","0")
sample(wheel,size=3,replace=TRUE,
prob=c(0.03,0.03,0.06,0.1,0.25,0.01,0.52))
}
Error in symbols[1] : object of type 'closure' is not subsettable


雷达卡




京公网安备 11010802022788号







