一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務(wù)器之家:專注于服務(wù)器技術(shù)及軟件下載分享
分類導(dǎo)航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術(shù)|正則表達(dá)式|C/C++|IOS|C#|Swift|Android|VB|R語(yǔ)言|JavaScript|易語(yǔ)言|vb.net|

服務(wù)器之家 - 編程語(yǔ)言 - R語(yǔ)言 - R語(yǔ)言中向量的加法和乘法運(yùn)算

R語(yǔ)言中向量的加法和乘法運(yùn)算

2022-01-04 15:38紅金龍-時(shí)光 R語(yǔ)言

這篇文章主要介紹了R語(yǔ)言中向量的加法和乘法運(yùn)算,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧

在R語(yǔ)言中,不同長(zhǎng)度的向量也是可以相加和相乘的,乘法的規(guī)則和加法類似

1,相同長(zhǎng)度的向量相加

?
1
2
3
4
> x<- 1:4
> y<- 1:4
> z<- x+y
> z
?
1
[1] 2 4 6 8

 

規(guī)則就是 x[1]+y[1],x[2]+y[2],x[3]+y[3],x[4]+y[4]

?
1
2
3
4
5
> x<- 1:4
> y<- 1:4
> z<- x*y
> z
[1] 1 4 9 16

 

乘法也類似

2,不同長(zhǎng)度的向量相加

?
1
2
3
4
5
6
7
8
> x<- 1:4
> y<- 1:3
> z<-x+y
警告信息:
In x + y : 長(zhǎng)的對(duì)象長(zhǎng)度不是短的對(duì)象長(zhǎng)度的整倍數(shù)
> z
[1] 2 4 6 5
>

注意R返回了一個(gè)警告消息而不是一個(gè)錯(cuò)誤消息, 因此這個(gè)操作實(shí)際上是被執(zhí)行了的。

這一類的規(guī)則就是 x[1]+y[1],x[2]+y[2],x[3]+y[3],x[4]+y[1](因?yàn)閥[3]就結(jié)束了,進(jìn)入了又一次循環(huán))

乘法規(guī)則類似

?
1
2
3
4
5
6
7
> x<- 1:4
> y<- 1:3
> z<- x*y
警告信息:
In x * y : 長(zhǎng)的對(duì)象長(zhǎng)度不是短的對(duì)象長(zhǎng)度的整倍數(shù)
> z
[1] 1 4 9 4

另外,所得的向量長(zhǎng)度為最長(zhǎng)的那個(gè)向量的長(zhǎng)度

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
> x<- 1:4
> y<- 1:3
> z<- 2:3
> w<- x+y+z
警告信息:
In x + y : 長(zhǎng)的對(duì)象長(zhǎng)度不是短的對(duì)象長(zhǎng)度的整倍數(shù)
> w
[1] 4 7 8 8
> v<-x*y*z
警告信息:
In x * y : 長(zhǎng)的對(duì)象長(zhǎng)度不是短的對(duì)象長(zhǎng)度的整倍數(shù)
> v
[1] 2 12 18 12
>

但是這里出了一個(gè)問題,

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
> x<- 1:4
> y<- 1:3
> z<- 2:3
> x+y+z
[1] 4 7 8 8
警告信息:
In x + y : 長(zhǎng)的對(duì)象長(zhǎng)度不是短的對(duì)象長(zhǎng)度的整倍數(shù)
> x+z+y
[1] 4 7 8 8
警告信息:
In x + z + y : 長(zhǎng)的對(duì)象長(zhǎng)度不是短的對(duì)象長(zhǎng)度的整倍數(shù)
> z+x+y
[1] 4 7 8 8
警告信息:
In z + x + y : 長(zhǎng)的對(duì)象長(zhǎng)度不是短的對(duì)象長(zhǎng)度的整倍數(shù)
><span style="color:#ff0000;"> z+y+x
[1] 4 7 8 7</span>
警告信息:
1: In z + y : 長(zhǎng)的對(duì)象長(zhǎng)度不是短的對(duì)象長(zhǎng)度的整倍數(shù)
2: In z + y + x : 長(zhǎng)的對(duì)象長(zhǎng)度不是短的對(duì)象長(zhǎng)度的整倍數(shù)
> z*x*y
[1] 2 12 18 12
警告信息:
In z * x * y : 長(zhǎng)的對(duì)象長(zhǎng)度不是短的對(duì)象長(zhǎng)度的整倍數(shù)
> z*y*x
[1] 2 12 18 8
警告信息:
1: In z * y : 長(zhǎng)的對(duì)象長(zhǎng)度不是短的對(duì)象長(zhǎng)度的整倍數(shù)
2: In z * y * x : 長(zhǎng)的對(duì)象長(zhǎng)度不是短的對(duì)象長(zhǎng)度的整倍數(shù)
>

不知道各位注意到了沒有,難道我們的方法不對(duì)么

首先,加法和乘法運(yùn)算,在沒有括號(hào)等其他優(yōu)先級(jí)的情況下是從左至右依次算的

我們來看一下

?
1
2
3
4
5
6
7
> x<- c(1,2,3,4)
> y<- c(1,2,3)
> z<- c(2,3)
> x+y
[1] 2 4 6 5
> x+y+z
[1] 4 7 8 8
?
1
2
3
4
> z+y
[1] 3 5 5
> z+y+x
[1] 4 7 8 7

所以說,不同長(zhǎng)度的向量相加,順序也是很重要的。

補(bǔ)充:R語(yǔ)言向量_常用的向量運(yùn)算

向量運(yùn)算與邏輯運(yùn)算

?
1
2
3
4
5
6
7
> 2+3
[1] 5
> "+"(2,3)
[1] 5
> x<-c(1,2,4)
> x+c(5,0,-1)
[1] 6 2 3

這些都比較簡(jiǎn)單,就是簡(jiǎn)單的標(biāo)量運(yùn)算和向量運(yùn)算,只不過是運(yùn)算符可以放到前面,并且向量的對(duì)應(yīng)元素需要相加罷了。

 

?
1
2
3
4
5
6
7
8
> x<-c(1,2,4)
> x*c(5,0,-1)
[1] 5 0 -4
> x<-c(1,2,4)
> x/c(5,4,-1)
[1] 0.2 0.5 -4.0
> x%%c(5,4,-1)
[1] 1 2 0

對(duì)于這幾步的運(yùn)算需要注意一下幾點(diǎn):*運(yùn)算就是向量對(duì)應(yīng)元素相乘,和線性代數(shù)里面的矩陣相乘并不一樣。/運(yùn)算就是對(duì)應(yīng)元素相除就好。%%運(yùn)算就是對(duì)應(yīng)元素相除取余數(shù)。

 

向量索引

?
1
2
3
4
5
6
7
8
> y<-c(1.2,3.9,0.4,0.12)
> y[c(1,3)]
[1] 1.2 0.4
> y[2:3]
[1] 3.9 0.4
> v<-3:4
> y[v]
[1] 0.40 0.12

這些都比較容易,一看就會(huì),不做詳細(xì)解釋

 

?
1
2
3
4
> x<-c(4,2,17,5)
> y<-x[c(1,1,3)]
> y
[1] 4 4 17

這個(gè)例子是想講元素重復(fù)是允許的

 

?
1
2
3
4
5
> z<-c(5,12,13)
> z[-1]
[1] 12 13
> z[-1:-2]
[1] 13

帶負(fù)號(hào)的下標(biāo)代表我們想要把相應(yīng)的元素剔除掉。

 

用:運(yùn)算符創(chuàng)建向量

?
1
2
3
4
5
6
7
8
9
> 5:8
[1] 5 6 7 8
> 5:1
[1] 5 4 3 2 1
> i<-2
> 1:i-1
[1] 0 1
> 1:(i-1)
[1] 1

:運(yùn)算符實(shí)際上就是為了得到一串等差數(shù)列,比較簡(jiǎn)單,但是要特別講一下的是1:i-1和1:(i-1),這里面實(shí)際上及一個(gè)運(yùn)算符優(yōu)先級(jí)的問題,1:i-1是先計(jì)算1:i得到1 2,然后再減1得到0 1,而1:(i-1)是先計(jì)算i-1得到1后然后計(jì)算1:1,最后答案就是1.

 

使用seq()創(chuàng)建向量

這個(gè)函數(shù)也是用來生成等差數(shù)列的,具體用法看例子

?
1
2
> seq(from=12,to=30,by=3)
[1] 12 15 18 21 24 27 30

這一段代碼表示從12到30生成等差數(shù)列,公差為3

?
1
2
> seq(from=1.1,to=2,length=10)
 [1] 1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8 1.9 2.0

這個(gè)表示從1.1到2生成10個(gè)數(shù)的等差數(shù)列

 

使用rep()重復(fù)向量常數(shù)

調(diào)用的格式是rep(x,times),表示創(chuàng)建times*length(x)個(gè)元素的向量,這個(gè)向量是有x重復(fù)times此構(gòu)成。

?
1
2
3
4
5
6
7
8
9
> x<-rep(8,4)
> x
[1] 8 8 8 8
> rep(c(5,12,13),3)
[1] 5 12 13 5 12 13 5 12 13
> rep(1:3,2)
[1] 1 2 3 1 2 3
> rep(c(5,12,13),each=2)
[1] 5 5 12 12 13 13

最后一個(gè)each表示向量中每一個(gè)元素重復(fù)的次數(shù),一個(gè)個(gè)元素重復(fù)的,不再是整個(gè)向量重復(fù)。

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持服務(wù)器之家。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教。

原文鏈接:https://blog.csdn.net/hongjinlongno1/article/details/52263403

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 免费观看一级特黄三大片视频 | 天天澡夜夜澡狠狠澡 | 男女男精品视频 | 亚洲午夜精品久久久久久成年 | 日本欧美一二三区色视频 | 精品久久久久久综合网 | 催奶师小说 | 美女脱了内裤让男桶爽 | 亚洲99久久无色码中文字幕 | 国产在线观看a | yy111111影院理论大片 | 九九99香蕉在线视频美国毛片 | 国产亚洲精品第一综合另类 | 99久久99热久久精品免费看 | 欧美一级特黄aaa大片 | 双性受合不垅腿攻np | 好深快点再快点好爽视频 | 91麻豆精品激情在线观看最新 | 国产99在线a视频 | 日韩高清在线免费观看 | 四虎永久网址影院 | 无限资源在线观看8 | 九九在线精品亚洲国产 | 成年男女免费视频网站 | 91se在线| 日韩欧美一区二区不卡 | 亚洲精品AV无码喷奶水糖心 | 人人人人看人人人做人人 | 处女私拍| 国产精品久久久天天影视香蕉 | 草莓丝瓜芭乐樱桃榴莲色多黄 | 手机在线观看网站免费视频 | 九九热精品免费观看 | 午夜想想爱午夜剧场 | 国内精品在线观看视频 | 精品99在线观看 | 白丝爆动漫羞羞动漫软件 | 爽好舒服把腿张小说 | 99热这里只精品99re66 | 国产亚洲精品一区二区在线播放 | 国产精品第1页在线播放 |