最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

R語言 實現(xiàn)矩陣相乘100次

 更新時間:2021年04月01日 09:52:37   作者:開心果汁  
這篇文章主要介紹了R語言 實現(xiàn)矩陣相乘100次的操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

【D1 D2】2*1

【T1 T2】1*2

要求D1和D2隨機的變動, 矩陣相乘100次

rm(list=ls())
gc()
options(scipen = 2000)
##################寫成函數(shù)###########3
#################定義TT矩陣(1*2)
TT <- matrix(c(1,3),1,2)
DD<- matrix(c(1,2),2,1)
result1 <- DD %*% TT
m1=result1
######################設(shè)定隨機取的整數(shù)范圍
x <- 1:100
m=data.frame()
#################變換DD矩陣(2*1)##############
for (i in 2:100){
 D2<- matrix(c(sample(x,1,replace=TRUE),sample(x,1,replace=TRUE)),2,1)
 # print(D2)
 result <- D2%*% TT
 print(result)
 m <- rbind(m,result)
 result1 <- result %*% result1
}
(finally_result <- result1)
(m_all <- rbind(m,m1))

補充:R語言之矩陣操作和運算

1.轉(zhuǎn)置運算

對于矩陣A,函數(shù)t(A)表示矩陣A的轉(zhuǎn)置,如:

> A=matrix(1:6,nrow=2);
> A;
  [,1] [,2] [,3]
[1,] 1 3 5
[2,] 2 4 6
> t(A);
  [,1] [,2]
[1,] 1 2
[2,] 3 4
[3,] 5 6

2.求方陣的行列式

函數(shù)det()是求矩陣行列式的值,如

> det(matrix(1:4,ncol=2));
[1] -2

3.向量的內(nèi)積

對于n維向量x,可以看成nxl階矩陣或lxn階矩陣。若x與y是相同

維數(shù)的向量,則x%*%Y表示x與y作內(nèi)積.例如,

>x=1:5; Y=2*1:5
>x%*%y
  [,1]
[1,]110

函數(shù)crossprod()是內(nèi)積運算函數(shù)(表示交叉乘積),crossprod(x,y)計算向量x與y的內(nèi)積,即t(x) %*% y'。crossprod(x)表示x與x的內(nèi)積.

類似地,tcrossprod(x,y)表示'x%*%t(Y)',即x與y的外積,也稱為叉積。tcrossprod(x)表示x與x作外積.如:

> x=1:5; y=2*1:5;
> crossprod(x);
  [,1]
[1,] 55
> crossprod(x,y);
  [,1]
[1,] 110
> tcrossprod(x);
  [,1] [,2] [,3] [,4] [,5]
[1,] 1 2 3 4 5
[2,] 2 4 6 8 10
[3,] 3 6 9 12 15
[4,] 4 8 12 16 20
[5,] 5 10 15 20 25
> tcrossprod(x,y);
  [,1] [,2] [,3] [,4] [,5]
[1,] 2 4 6 8 10
[2,] 4 8 12 16 20
[3,] 6 12 18 24 30
[4,] 8 16 24 32 40
[5,] 10 20 30 40 50

4.向量的外積(叉積)

設(shè)x和y是n維向量,則x%o%y表示x與y作外積.例如

> x%o%y;
  [,1] [,2] [,3] [,4] [,5]
[1,] 2 4 6 8 10
[2,] 4 8 12 16 20
[3,] 6 12 18 24 30
[4,] 8 16 24 32 40
[5,] 10 20 30 40 50

outer()是更為強大的外積運算函數(shù),outer(x,y)計算向量二與y的外積,它等價于x %o%y函數(shù)。

outer()的一般調(diào)用格式為 outer(x,y,fun=”*”)

其中x, y矩陣(或向量),fun是作外積運算函數(shù),缺省值為乘法運算。函數(shù)outer()在繪制三維曲面時非常有用,它可生成一個x和y的網(wǎng)格。

5.矩陣的乘法

設(shè)A和B為兩個矩陣,通常意義下的矩陣乘法是通過A%*%B來完成,crossprod(A,B)表示的是

t(A)%*%B,而tcrossprod(A,B)表示的是A%*%t(B)。最后我們通過運算知道x%*%A%*%x為二次型。

> A=array(1:9,dim=(c(3,3)))
> B=array(9:1,dim=(c(3,3)))
> A%*%B;
  [,1] [,2] [,3]
[1,] 90 54 18
[2,] 114 69 24
[3,] 138 84 30
> crossprod(A,B)==t(A)%*%B;
  [,1] [,2] [,3]
[1,] TRUE TRUE TRUE
[2,] TRUE TRUE TRUE
[3,] TRUE TRUE TRUE
> tcrossprod(A,B)==A%*%t(B);
  [,1] [,2] [,3]
[1,] TRUE TRUE TRUE
[2,] TRUE TRUE TRUE
[3,] TRUE TRUE TRUE

6.生成對角陣和矩陣取對角運算

函數(shù)diag()依賴于它的變量,當(dāng)v是一個向量時,diag(v)表示以v的元素為對角線元素的對角陣.當(dāng)M是一個矩陣時,則diag(M)表示的是取M對角線上的元素的向量.如

> v=c(1,4,5);
> diag(v);
  [,1] [,2] [,3]
[1,] 1 0 0
[2,] 0 4 0
[3,] 0 0 5
> M=array(1:9,dim=c(3,3));
> diag(M);
[1] 1 5 9

7.解線性方程組和求矩陣的逆矩陣

若求解線性方程組Ax=b,其命令形式為solve(A,b),求矩陣A的逆,其命令形式為solve(A).設(shè)矩陣A=t(array(c(1:8,10),dim=c(3,3))),b<-c(1,1,1),則解方程組Ax=b的解x和求矩陣A的逆矩陣的命令如下:

> A=t(array(c(1:8,10),dim=c(3,3)));
> b=c(1,1,1);
> x=solve(A,b);
> x;
[1] -1.000000e+00 1.000000e+00 3.806634e-16
> solve(A);
   [,1]  [,2] [,3]
[1,] -0.6666667 -1.333333 1
[2,] -0.6666667 3.666667 -2
[3,] 1.0000000 -2.000000 1

8.求矩陣的特征值與特征向量

函數(shù)eigen(Sm)是求對稱矩陣Sm的特征值與特征向量,其命令形式為:ev=eigen(Sm),則ev存放著對稱矩陣Sm特征值和特征向量,是由列表形式給出的,其中ev$values是Sm的特征值構(gòu)成的向量,ev$vectors是Sm的特征向量構(gòu)成的矩陣.如

> Sm=crossprod(A,A);
> ev=eigen(Sm);
> ev;
$values
[1] 303.19533618 0.76590739 0.03875643
$vectors
   [,1]   [,2]  [,3]
[1,] -0.4646675 0.833286355 0.2995295
[2,] -0.5537546 -0.009499485 -0.8326258
[3,] -0.6909703 -0.552759994 0.4658502

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。如有錯誤或未考慮完全的地方,望不吝賜教。

相關(guān)文章

  • R語言rhdf5讀寫hdf5并展示文件組織結(jié)構(gòu)和索引數(shù)據(jù)

    R語言rhdf5讀寫hdf5并展示文件組織結(jié)構(gòu)和索引數(shù)據(jù)

    這篇文章主要為大家介紹了R語言rhdf5讀寫hdf5并展示文件組織結(jié)構(gòu)和索引數(shù)據(jù),有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-06-06
  • R語言常用兩種并行方法之snowfall詳解

    R語言常用兩種并行方法之snowfall詳解

    這篇文章主要為大家介紹了R語言常用兩種并行方法之snowfall詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2021-11-11
  • R語言數(shù)據(jù)類型知識點總結(jié)

    R語言數(shù)據(jù)類型知識點總結(jié)

    在本篇文章里小編給大家整理的是一篇關(guān)于R語言數(shù)據(jù)類型知識點總結(jié)內(nèi)容,有興趣的朋友們可以學(xué)習(xí)下。
    2021-03-03
  • R語言ggplot2?title設(shè)置教程(main,axis和legend?titles)

    R語言ggplot2?title設(shè)置教程(main,axis和legend?titles)

    ggplot2是一個強大的作圖工具,它可以讓你不受現(xiàn)有圖形類型的限制,創(chuàng)造出任何有助于解決你所遇到問題的圖形,下面這篇文章主要給大家介紹了關(guān)于R語言ggplot2?title設(shè)置(main,axis和legend?titles)的相關(guān)資料,需要的朋友可以參考下
    2023-02-02
  • R語言判斷語句的使用詳解

    R語言判斷語句的使用詳解

    這篇文章主要介紹了R語言判斷語句的使用詳解,幫助大家更好的理解和學(xué)習(xí)使用R語言,感興趣的朋友可以了解下
    2021-03-03
  • R語言讀取柵格數(shù)據(jù)的方法(raster包讀取)

    R語言讀取柵格數(shù)據(jù)的方法(raster包讀取)

    這篇文章主要介紹了R語言讀取柵格數(shù)據(jù)的方法,本文就只是對R語言raster包讀取、處理柵格數(shù)據(jù)加以基本的方法介紹,需要的朋友可以參考下
    2023-05-05
  • R語言交叉驗證的實現(xiàn)代碼

    R語言交叉驗證的實現(xiàn)代碼

    這篇文章主要介紹了R語言交叉驗證的實現(xiàn),本文通過示例代碼給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-03-03
  • R語言數(shù)值取消科學(xué)計數(shù)法表示的操作

    R語言數(shù)值取消科學(xué)計數(shù)法表示的操作

    這篇文章主要介紹了R語言數(shù)值取消科學(xué)計數(shù)法表示的操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-04-04
  • R語言實現(xiàn)二進制文件讀寫操作

    R語言實現(xiàn)二進制文件讀寫操作

    這篇文章主要介紹了R語言實現(xiàn)二進制文件讀寫操作,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-03-03
  • R語言數(shù)據(jù)預(yù)處理操作——離散化(分箱)

    R語言數(shù)據(jù)預(yù)處理操作——離散化(分箱)

    這篇文章主要介紹了R語言數(shù)據(jù)預(yù)處理操作——離散化(分箱),具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-03-03

最新評論

策勒县| 崇义县| 藁城市| 东方市| 胶南市| 靖宇县| 郎溪县| 蓬莱市| 长春市| 奉化市| 九龙城区| 洪洞县| 吴忠市| 江山市| 万全县| 水城县| 凌云县| 龙里县| 辽宁省| 林州市| 突泉县| 米泉市| 昭平县| 忻城县| 双流县| 明溪县| 宁都县| 出国| 东港市| 汶上县| 河曲县| 丰顺县| 视频| 丹凤县| 霍城县| 娄烦县| 城步| 专栏| 德昌县| 杭州市| 临朐县|