0
假設我有一個矩陣rmatrix
定義如下:替換與NA的矩陣的元素爲那些與行和列名沒有存儲在數據幀
set.seed(10)
rmatrix <- matrix(sample(0:100, 16), ncol=4)
dimnames(rmatrix) <- list(rownames(rmatrix, do.NULL = FALSE,
prefix = "row"), colnames(rmatrix, do.NULL = FALSE, prefix = "col"))
rmatrix
col1 col2 col3 col4
row1 51 8 57 10
row2 30 21 39 52
row3 42 26 59 31
row4 67 25 100 36
甲數據幀df
存儲行和列的一些組合的rmatrix
名稱:
df <- data.frame(r = c('row1', 'row1', 'row3', 'row4', 'row4', 'row4'),
c = c('col2', 'col4', 'col3', 'col3', 'col1', 'col2'))
df
r c
1 row1 col2
2 row1 col4
3 row3 col3
4 row4 col3
5 row4 col1
6 row4 col2
如何rmatrix
任何元素變爲NA
如果它的名字不是在df
?謝謝!
有沒有必要從名字轉換爲數字,但如果你打算這樣做,「匹配」似乎比regexing更安全。 – Frank
@Frank與另一個答案有一些相似之處,所以我必須刪除直接轉換 – akrun