这是R 中粘贴/折叠的后续行动, 我认为开始一个新问题比用新问题无休止地编辑前一个问题更可取。
我要做的是一些我想模拟玩游戏的向量。目标是随机选择两种策略进行对抗,然后生成结果矩阵,一个神奇的 for 循环将为每个策略分配一个分数。
###Sample Strategies
whales <- c("C","D","C","D","D")
quails <- c("D","D","D","D","D")
snails <- c("C", "C", "C", "C", "C")
bales <- c("D", "D", "C", "D", "C")
####Combining into a matrix
gameboard<-cbind(whales, quails, bales, snails, deparse.level = 1)
####All of the names of the strategies/columns
colnames(gameboard)
####Randomly pick two random column names
game1<- colnames(gameboard)[sample(1:ncol(gameboard), 2, replace= FALSE)]
results <-paste(game1[1], game1[2], sep='')
现在这确实有效,除了我实际上访问的是列名,而不是列中的数据。因此,当我想要 CD DD CC DD DC 的实际串联时,我最终会得到类似“whalesbales”的结果。
也许“申请”或“申请”......在这里申请?
不可避免的后续问题是我如何才能让最后一行显示“结果”而不是“results_whalesVbales”?因为我假设
results"game1[1]", sep='V',game1[2]"
不会削减它,并且有一些丑陋的方法可以使用大量括号和块引号来做到这一点。
#跟进
提前感谢您的建议。
感谢费迪南德的回应和详尽的解释-一些后续行动:
(1) 有没有办法得到 paste(.Last.value, collapse="") [1] "DC DD CC DD CD"
结果是一个名为 result_balesVwhales 的新对象(向量?)
paste0("results_", paste(colnames(gameboard [randompair],collapse="V"))
[1] "results_balesVwhales"
到目前为止,我所做的一切都使向量的值为 results_balesVwhales。
(2) 我可以强制新的 results_balesVwhales 具有包和鲸鱼各自具有的“长”(柱状)格式,而无需重塑?