R語言 dataframe轉化為matrix
阿新 • • 發佈:2018-12-13
第一次寫部落格,從今日起正式開始記錄小白成長記.
1. 問題描述
將從MATLAB中匯出的mat資料, 匯入到R中, 並將dataframe格式 轉化為 matrix格式.
如上圖1為MATLAB匯出的mat資料, 大小為9843*1643.
2. 解決方案
解決方案一共分為以下3個步驟.
|
2.1 mat資料轉化為csv格式
在matlab中, 使用csvwrite函式,其中s為mat檔案,將mat檔案匯出為"ko_wt.csv"檔案.
csvwrite('ko_wt.csv',s);
2.2 R讀入csv檔案
在R中, 使用read.csv函式讀取 csv 檔案,
read.csv(file, header = TRUE, sep = ",", quote = "\"", dec = ".", fill = TRUE, comment.char = "", ...)
file需要給出csv檔案路徑 (win和mac路徑符號不同需注意), 其餘引數參見help(read.csv), 類似讀取資料的函式有:read.table, read.csv2, read.delim等.
具體參見: http://127.0.0.1:17814/library/utils/html/read.table.html
data1<-read.csv('d:/ko_wt.csv') #引數預設為TRUE
data2<-read.csv('d:/ko_wt.csv',header=FALSE)
2.3 dataframe轉化為matrix
將dataframe轉化為matrix, 目前找到了2種方法,歡迎補充..
- 使用 data.matrix 函式
y = data.metrix(data1)
- 使用as.number函式(詳見help(as.number))
y <- apply(data1, as.numeric)
3. 待解決
將大小為9843*1643的matrix, 取任意一行存為numeric格式.