R 是一種用於執行統計計算和圖形目的的編程語言。目前它得到 R 核心團隊和 R 統計計算基金會的支持和支持。對於數據分析和統計軟件的創建,統計學家、生物信息學家和數據挖掘人員使用R Programming Language。 R 編程語言是數據挖掘中最流行的語言之一。
在本文中,我們將了解如何在 R 中讀取稀疏矩陣並將其轉換為密集矩陣。
稀疏矩陣和稠密矩陣
稀疏矩陣是大多數元素為 zero-valued 的任何矩陣,而密集矩陣正好相反,即大多數元素為非零值的矩陣。
The following is a spares matrix: [[0, 0, 0, 1], [7, 0, 0, 0]] While, below is a dense matrix: [[1, 9, 0, 2], [8, 3, 5, 4]]
矩陣包
我們將借助 Matrix 包來完成此操作。矩陣包幫助我們在 R 中執行矩陣運算。讓我們從安裝該包開始。您可以使用以下命令進行安裝:
install.packages("Matrix")
要將稀疏矩陣轉換為稠密矩陣,我們將使用as.matrix()方法。它采用data.table對象並將其轉換為矩陣。
用法:
as.matrix(x, rownames=NULL, rownames.value=NULL)
參數:
- x: data.table 對象。
- rownames: 用作結果中的行名稱的列名稱或編號。它是可選的。
- 行名.值:用作結果矩陣中的行名稱的值。它是可選的。
示例 1:在此示例中,我有一個包含 4 個非零條目的 6 x 7 稀疏矩陣,我已使用 as.matrix() 方法將其轉換為密集矩陣。
R
library(Matrix)
i <- c(1, 4, 5, 6)
j <- c(2, 7, 3, 1)
x <- c(8, 1, 9, 2)
sm <- sparseMatrix(i, j, x = x)
print(sm)
dm <- as.matrix(sm)
dm
輸出:
示例 2:在此示例中,我有一個包含 6 個非零條目的 7 x 8 稀疏矩陣,我已使用 as.matrix() 方法將其轉換為密集矩陣。我已經用過魯普瓦生成隨機數的方法。
R
library(Matrix)
i <- c(1, 5, 2, 3, 7, 2)
j <- c(8, 4, 2, 1, 6, 1)
x <- rpois(6, 3)
sm <- sparseMatrix(i, j, x = x)
print(sm)
dm <- as.matrix(sm)
dm
輸出:
相關用法
- R SparkR alias用法及代碼示例
- R SparkR approxQuantile用法及代碼示例
- R SparkR arrange用法及代碼示例
- R SparkR as.data.frame用法及代碼示例
- R SparkR attach用法及代碼示例
- R SparkR avg用法及代碼示例
- R SparkR awaitTermination用法及代碼示例
- R SparkR broadcast用法及代碼示例
- R SparkR cache用法及代碼示例
- R SparkR cacheTable用法及代碼示例
- R SparkR cancelJobGroup用法及代碼示例
- R SparkR cast用法及代碼示例
- R SparkR checkpoint用法及代碼示例
- R SparkR coalesce用法及代碼示例
- R SparkR collect用法及代碼示例
- R SparkR coltypes用法及代碼示例
- R SparkR column用法及代碼示例
- R SparkR columns用法及代碼示例
- R SparkR corr用法及代碼示例
- R SparkR count用法及代碼示例
- R SparkR cov用法及代碼示例
- R SparkR createDataFrame用法及代碼示例
- R SparkR createExternalTable用法及代碼示例
注:本文由純淨天空篩選整理自aayushmohansinha大神的英文原創作品 How to Convert Sparse Matrix to Dense Matrix in R?。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。