0
我有一個值的字符串;我想制定一個新的對象使用複製
a <- 1:159
,我想制定一個新的對象,其中首先從80寫入一個序列:159和第二79:158和第三78:157 .....到1:80。我希望這個新對象擁有6400個元素。
我試圖用
for (i in rep(1:80,each=80)){a[i] <- ((81-i):(160-i))}
這是行不通的。
我有一個值的字符串;我想制定一個新的對象使用複製
a <- 1:159
,我想制定一個新的對象,其中首先從80寫入一個序列:159和第二79:158和第三78:157 .....到1:80。我希望這個新對象擁有6400個元素。
我試圖用
for (i in rep(1:80,each=80)){a[i] <- ((81-i):(160-i))}
這是行不通的。
你可以使用
x <- embed(a, 80)
列將對應於你想
x[,1] == 80:159
x[,2] == 79:158
...
x[,80] == 1:80
和
length(x)
# 6400
什麼,如果你只是想它作爲一個載體,而不是矩陣,只要做
x <- as.vector(embed(a, 80))
非常感謝你的工作。你是如此聰明的人。 –
一個好的開始位置,如果你知道最後一個對象將是一個長度爲6400的整數向量,你應該提前創建它:'myVector < - integer(6400)'。然後你可以填寫它。這將節省很多努力來反覆複製一個正在增長的對象。 – lmo
'unlist(lapply(80:1,function(x){seq(x,length.out = 80)}))',也許 – alistaire