您可以通過命名「分數」做它在正確的地方
scores <- sample(1000)
names(scores)<-NA
names(scores)[seq(1, 1000, 111)]<-1:10
barplot(scores, main="my plot", xlab="my 1000 scores")
這是如何工作的?
我們將打破這一行:
names(scores)[seq(1, 1000, 111)] <- 1:10
我們已經在「分數」(NA)
我可以叫這些名字與names(scores)
我分配一個名稱的每個值可以調用這些名字的子集與names(scores)[1:10]
現在對於seq(1, 1000, 111)
- 這是從1的111
0的步驟的序列,以100
因此names(scores)[seq(1, 1000, 111)]
是「分數」名稱的子集 - 具體是數字1,112,223等。
爲什麼我使用111?我們試圖在1000個「插槽」中平均分配10個值。你計算與(1000 - 1)中的步驟/(10 - 1)
對於你的第二個例子(10〜10步100),我們可以簡單地用一組數字seq(10, 100, 10)
通知更換<-1:10
該length(1:10)
和length(seq(10, 100, 10))
都是10
現在爲您的最後一個例子length(seq(0, 100, 10))
通過包括0,你增加了一個額外的值(合計11),所以我們需要在names(scores)
01使用不同的時隙
(1000 - 1)/(11-1)= 99.9,所以我們需要重新設置名稱
names(scores) <- NA
然後用新的序列
names(scores)[seq(1, 1000, 99.9)]<-seq(0, 100, 10)
很好用,謝謝 – jake9115
Ed,我如何編輯'names(scores)[seq(1,1000,111)] < - 1:10'這一行來使範圍從10變爲100而不是1到10? – jake9115
姓名(分數)[seq(1,1000,111)] < - seq(10,100,10) –