R語(yǔ)言-有負(fù)下標(biāo)里才能有零介紹
1、只有負(fù)下標(biāo)里才能有零
先看一個(gè)例子
>a<-c(1,2,3,4) >a[-1:1] > a[-1:1]
Error in a[-1:1] : 只有負(fù)下標(biāo)里才能有零
(1)只有負(fù)下標(biāo)里才能有零,在這里的意思為:
a[-1:0] 可行
a[0:4]也可行
a[-1:1]不可行
也就是說(shuō)要么是負(fù)索引到0,或者0到正索引,但不能同時(shí)出現(xiàn)正負(fù)索引。
(2)a[0]結(jié)果為numberic(0),結(jié)果沒(méi)有意義,如
> a[0]+10.9 numeric(0) > a[1]+10.9 [1] 11.9
索引為0,不會(huì)得到正確的結(jié)果,但不會(huì)報(bào)錯(cuò)。
2、容易混淆的例子
>a<-c(1,2,3,4) >a[2:length(a)-1]
結(jié)果是什么?是2,3嗎?
結(jié)果是:1,2,3
> a[2:length(a)-1] [1] 1 2 3
這是為什么呢,不是取2到長(zhǎng)度減1個(gè),也就是2,3嗎?
2.1 分析
(1)length(a)值為4
(2)2:length(a)真實(shí)含義為2:4
(3)2:4為一個(gè)向量,而不是一個(gè)簡(jiǎn)單的標(biāo)記,實(shí)際上表示2,3,4
(4)2:length(a)-1,真實(shí)含義為向量c(2,3,4)-1,結(jié)果為1,2,3
(5)故最后結(jié)果等同于
> a[c(1,2,3)] [1] 1 2 3
即通過(guò)一個(gè)向量索引c(1,2,3),取向量a中的值。
2.2 改正
其實(shí)要達(dá)到期望的效果,正確的式子應(yīng)為:
a[2:(length(a)-1)]
冒號(hào)后段要加上括號(hào)才對(duì)。如果不加括號(hào),則變成了一個(gè)向量減去1。加上括號(hào)后才表示取除第1個(gè)和最后一個(gè)元素的向量。
補(bǔ)充:R語(yǔ)言筆記(有關(guān)向量的創(chuàng)建和下標(biāo)索引)
如下所示:
1、R語(yǔ)言的下標(biāo)索引是從1開(kāi)始的
且下標(biāo)索引為負(fù)數(shù)的話表示刪除某個(gè)元素
> (x<-seq(from=10,to=20,by=1)) [1] 10 11 12 13 14 15 16 17 18 19 20 > x[-1] [1] 11 12 13 14 15 16 17 18 19 20 > x[c(-1,-2,-3)] [1] 13 14 15 16 17 18 19 20 >
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教。
相關(guān)文章
詳解R語(yǔ)言中的多項(xiàng)式回歸、局部回歸、核平滑和平滑樣條回歸模型
這篇文章主要介紹了R語(yǔ)言中的多項(xiàng)式回歸、局部回歸、核平滑和平滑樣條回歸模型,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-03-03R語(yǔ)言中常見(jiàn)的幾種創(chuàng)建矩陣形式總結(jié)
這篇文章主要給大家介紹了關(guān)于R語(yǔ)言中常見(jiàn)的幾種創(chuàng)建矩陣形式的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2021-03-03