r - 交换代理人
问题描述
我的任务是通过交换模型生成代理时间序列:在时间序列中选择一个随机点并交换两个段的顺序。这样做 100 次,这是一个替代时间序列。
我的问题是,我交换时间序列多少次似乎并不重要。即使我这样做了 1000 次,我也会得到与原始系列非常相似的系列。我期待在这多次之后完全随机化它。
我想我的算法有问题,但我不知道在哪里。任何人都可以帮忙吗?这是我的短代码:
'''
swap_model <- function(ts,times,nr_surr){
#choose a random pozition in time series (ts) and swap the two segments 'times' times
n<-length(ts)
l <- seq(1,n,1)
sws <-data.frame(l)
for (j in 1:nr_surr){
tts <- ts
for (i in 1:times){
poz <- sample(1:n,1,replace = F)
tts <- c(tail(tts,n-poz),head(tts,poz))
}
sws <- cbind(sws,tts[1:n])
}
sws$l <- NULL
return(sws)
}
'''
解决方案
推荐阅读
- web - Heroku 部署
- gatsby - 更新 Prismic CMS 内容时在 gatsby 网站上显示新内容
- blazor - 为什么不改变变量的值
- pycharm - 现在强制 lsyncd 到 sybc
- google-cloud-platform - 有什么方法可以从 Windows 中的 powershell 打开 google cloud shell
- c++ - UE4 - 如何在给定 4 个屏幕坐标的情况下缩放纹理或材质?
- spring-integration - Spring 集成 Java DSL 示例
- swift - 如何将变量声明为 Equatable?
- typescript - 如何根据传递的类判断构造函数的类型?
- python - “需要一个类似字节的对象,而不是 str”Python 中的错误