我有一些問題需要表達自己。也許,這就是爲什麼我沒有找到任何幫助我的東西。這個例子應該明確我想要的。 假設我有一個m×m的座標矩陣結構。可以說它的範圍從A1到E5。並且我想要將距離外部座標k行的行/列子集。基於邊界條件的數據框中的子集行和列
在我的例子中k是2.所以我想選擇數據框中所有具有座標B2,B3,B4,C2,C4,D2,D3,D4的記錄。手動,我會做以下幾點:
cc <- data.frame(x=(LETTERS[1:5]), y=c(rep(1,5),rep(2,5),rep(3,5), rep(4,5), rep(5,5)) , z=rnorm(25))
slct <- with(cc, which((x=="B" | x=="C" | x=="D") & (y==2 | y==3 | y==4) & !(x=="C" & y==3)))
cc[slct,] # result data frame
但是,如果矩陣的尺寸增加,這將不會很好的方式。任何更好的想法?
請注意,在'k == 1'的特殊情況下,您必須刪除%!'零件中的'!cc $ ...%,否則您將得到一個不正確的解決方案。爲了明確答案,我決定不單獨處理,但這是微不足道的補充。 – Backlin