0
我在R中有以下查找問題(但我不確定我是否正確使用此術語)。給定是具有數據點的matrix
,其中行和列名稱是相同的並且以相同的順序(如在例如協方差矩陣中)。還給出了行和列名對的data.frame
,對應的值應在矩陣中查找。如何在矩陣(R)中查找行/列組合的值?
爲了說明(並使用通用的非對稱矩陣):
set.seed(1)
m = matrix(1:25,5,5)
colnames(m) <- c("A","B","C","D","E")
rownames(m) <- c("A","B","C","D","E")
l <- matrix(ncol=2,nrow=5)
for(i in 1:5){
l[i,] <- sample(c("A","B","C","D","E"),2,replace = FALSE) #choose TRUE if diagonal elements should be included in the list
}
l <- as.data.frame(l)
colnames(l) <- c("row","column")
因此,我們有矩陣'm'和data.frame l
(相等數目的m
和l
行的是偶合和nrow(l)
可能更高,但對冗餘肯定發生了>25
):
A B C D E
A 1 6 11 16 21
B 2 7 12 17 22
C 3 8 13 18 23
D 4 9 14 19 24
E 5 10 15 20 25
row column
1 B E
2 C D
3 B D
4 E C
5 D A
我們尋求找到一個算法:
> c(22,18,17,15,4)
我很樂意指出這個問題如何正確引用和實用的解決方案。
哇,我不知道它是可能的子矩陣... – tomka
這幫助文件是值得的時間去通過。它有一些隱藏的jems。 – lmo