亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

R語言如何創建矩陣

發布時間:2022-01-20 10:54:12 來源:億速云 閱讀:881 作者:iii 欄目:開發技術

今天小編給大家分享一下R語言如何創建矩陣的相關知識點,內容詳細,邏輯清晰,相信大部分人都還太了解這方面的知識,所以分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后有所收獲,下面我們一起來了解一下吧。

矩陣

矩陣是其中元素以二維矩形布局布置的R對象, 它們包含相同原子類型的元素。這種數據結構很類似于其它語言中的二維數組,但 R 提供了語言級的矩陣運算支持。

矩陣里的元素可以是數字、符號或數學式。

一個 M x N 的矩陣是一個由 M(row) 行 和 N 列(column)元素排列成的矩形陣列。

矩陣創建

R 語言的矩陣可以使用 matrix() 函數來創建,語法格式如下:

matrix(data = NA, nrow = 1, ncol = 1, byrow = FALSE,dimnames = NULL)

參數說明:

  • data 向量,矩陣的數據

  • nrow 行數

  • ncol 列數

  • byrow 邏輯值,為 FALSE 按列排列,為 TRUE 按行排列

  • dimname 設置行和列的名稱

創建一個數字矩陣“

# byrow 為 TRUE 元素按行排列
M <- matrix(c(3:14), nrow = 4, byrow = TRUE)
print(M)

# Ebyrow 為 FALSE 元素按列排列
N <- matrix(c(3:14), nrow = 4, byrow = FALSE)
print(N)

# 定義行和列的名稱
rownames = c("row1", "row2", "row3", "row4")
colnames = c("col1", "col2", "col3")

P <- matrix(c(3:14), nrow = 4, byrow = TRUE, dimnames = list(rownames, colnames))
print(P)

執行以上代碼輸出結果為:
[,1] [,2] [,3]
[1,]    3    4    5
[2,]    6    7    8
[3,]    9   10   11
[4,]   12   13   14
     [,1] [,2] [,3]
[1,]    3    7   11
[2,]    4    8   12
[3,]    5    9   13
[4,]    6   10   14
     col1 col2 col3
row1    3    4    5
row2    6    7    8
row3    9   10   11
row4   12   13   14

轉置矩陣

R 語言矩陣提供了 t() 函數,可以實現矩陣的行列互換。

例如有個 m 行 n 列的矩陣,使用 t() 函數就能轉換為 n 行 m 列的矩陣。

R語言如何創建矩陣

# 創建一個 2 行 3 列的矩陣
M = matrix( c(2,6,5,1,10,4), nrow = 2,ncol = 3,byrow = TRUE)
print(M)
     [,1] [,2] [,3]
[1,]    2    6    5
[2,]    1   10    4
# 轉換為 3 行 2 列的矩陣
print(t(M))

執行以上代碼輸出結果為:
     [,1] [,2] [,3]
[1,]    2    6    5
[2,]    1   10    4
 "-----轉置后-----"
     [,1] [,2]
[1,]    2    1
[2,]    6   10
[3,]    5    4

矩陣有一個dim屬性,內容是兩個元素的向量, 兩個元素分別為矩陣的行數和列數。dim屬性可以用dim()函數訪問。如

# 創建一個 2 行 3 列的矩陣
M = matrix( c(2,6,5,1,10,4), nrow = 2,ncol = 3,byrow = TRUE)
print(M)
     [,1] [,2] [,3]
[1,]    2    6    5
[2,]    1   10    4

dim(A)
[1] 2 3

訪問矩陣元素

如果想獲取矩陣元素,可以通過使用元素的列索引和行索引,類似坐標形式。

# 定義行和列的名稱
rownames = c("row1", "row2", "row3", "row4")
colnames = c("col1", "col2", "col3")

# 創建矩陣
P <- matrix(c(3:14), nrow = 4, byrow = TRUE, dimnames = list(rownames, colnames))
print(P)
# 獲取第一行第三列的元素
print(P[1,3])

# 獲取第四行第二列的元素
print(P[4,2])

# 獲取第二行
print(P[2,])

# 獲取第三列
print(P[,3])

執行以上代碼輸出結果為:

     col1 col2 col3
row1    3    4    5
row2    6    7    8
row3    9   10   11
row4   12   13   14

[1] 5

[1] 13

 col1 col2 col3 
    6    7    8 

 row1 row2 row3 row4 
    5    8   11   14

矩陣計算

大小相同(行數列數都相同)的矩陣之間可以相互加減,具體是對每個位置上的元素做加減法。矩陣的乘法則較為復雜。兩個矩陣可以相乘,當且僅當第一個矩陣的列數等于第二個矩陣的行數。

矩陣加減法

# 創建 2 行 3 列的矩陣
matrix1 <- matrix(c(7, 9, -1, 4, 2, 3), nrow = 2)
print(matrix1)

matrix2 <- matrix(c(6, 1, 0, 9, 3, 2), nrow = 2)
print(matrix2)

# 兩個矩陣相加
result <- matrix1 + matrix2
cat("相加結果:","\n")
print(result)

# 兩個矩陣相減
result <- matrix1 - matrix2
cat("相減結果:","\n")
print(result)

執行以上代碼輸出結果為:

     [,1] [,2] [,3]
[1,]    7   -1    2
[2,]    9    4    3
     [,1] [,2] [,3]
[1,]    6    0    3
[2,]    1    9    2
相加結果: 
     [,1] [,2] [,3]
[1,]   13   -1    5
[2,]   10   13    5
相減結果: 
     [,1] [,2] [,3]
[1,]    1   -1   -1
[2,]    8   -5    1

矩陣乘除法

# 創建 2 行 3 列的矩陣
matrix1 <- matrix(c(7, 9, -1, 4, 2, 3), nrow = 2)
print(matrix1)

matrix2 <- matrix(c(6, 1, 0, 9, 3, 2), nrow = 2)
print(matrix2)

# 兩個矩陣相乘
result <- matrix1 * matrix2
cat("相乘結果:","\n")
print(result)

# 兩個矩陣相除
result <- matrix1 / matrix2
cat("相除結果:","\n")
print(result)
執行以上代碼輸出結果為:

     [,1] [,2] [,3]
[1,]    7   -1    2
[2,]    9    4    3
     [,1] [,2] [,3]
[1,]    6    0    3
[2,]    1    9    2
相乘結果: 
     [,1] [,2] [,3]
[1,]   42    0    6
[2,]    9   36    6
相除結果: 
         [,1]      [,2]      [,3]
[1,] 1.166667      -Inf 0.6666667
[2,] 9.000000 0.4444444 1.5000000

以上就是“R語言如何創建矩陣”這篇文章的所有內容,感謝各位的閱讀!相信大家閱讀完這篇文章都有很大的收獲,小編每天都會為大家更新不同的知識,如果還想學習更多的知識,請關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

江西省| 临沭县| 承德市| 凌云县| 贵阳市| 海原县| 朔州市| 广宗县| 吴川市| 丰宁| 德化县| 刚察县| 光泽县| 南华县| 寿宁县| 宁国市| 平湖市| 惠来县| 普宁市| 崇义县| 华蓥市| 淮阳县| 繁峙县| 太谷县| 绥阳县| 乌拉特后旗| 二手房| 荔浦县| 渑池县| 新竹县| 襄城县| 三江| 太湖县| 迭部县| 九龙坡区| 阿拉善左旗| 梁平县| 道真| 建宁县| 宁南县| 府谷县|