我想一個新行追加到每個I運行時間的函數的矩陣每次運行。我認爲,第一次運行函數時創建了一個矩陣,並在後面的時間中添加一個帶有值的新行。追加新行的功能
這是一些虛擬數據。可以說x
和y
是矩形的邊和z
某種形式的ID。實際上,這些並不是事先知道的,而是由函數輸出的。真正的函數將一個物種目錄作爲參數,讀取形狀文件,合併多邊形並執行一系列其他操作,但輸出表面區域。對於每個物種(即函數運行),我想將每個輸出區域存儲在矩陣或數據框中以供進一步分析,而不是將其輸出到單個變量。
myfunc <- function(x, y, z){
area <- x*y
id <- z
tmp <- cbind(area,id)
assign(as.matrix('mtrx'), rbind(tmp), envir=.GlobalEnv)
}
以上顯然只會創建矩陣並在每次運行函數時覆蓋它。
任何指針將是非常非常感謝!
第一個參數需要是要分配的對象的名稱。爲什麼你要將字符串轉換爲字符矩陣?這個'assign('mtrx',....)'工作嗎?一旦你運行功能 –
矩陣'mtrx'創建... –
OK,但我的觀點是第一個參數'assign'是你想分配給,而不是一個矩陣的東西的名字的特徵向量。閱讀'?assign'。 –